怎么大量爬取京东商品的ID
时间: 2023-09-02 11:08:12 浏览: 85
京东商品的ID一般是在商品详情页的URL中,可以通过对商品列表页进行爬取,然后解析每个商品的URL,从中获取商品ID。
下面是一个简单的示例代码,可以爬取京东搜索页面中所有商品的ID:
```python
import requests
from bs4 import BeautifulSoup
# 获取京东商品页面的 HTML 代码
def get_html(url):
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
r = requests.get(url, headers=headers)
r.encoding = r.apparent_encoding
return r.text
# 解析页面,获取商品ID
def parse_html(html):
soup = BeautifulSoup(html, 'html.parser')
items = soup.select('.gl-item')
ids = []
for item in items:
url = item.select('.p-img a')[0]['href']
id = url.split('/')[-1].split('.')[0]
ids.append(id)
return ids
if __name__ == '__main__':
url = 'https://search.jd.com/Search?keyword=python&enc=utf-8'
html = get_html(url)
ids = parse_html(html)
print(ids)
```
这个示例代码可以爬取京东搜索页面中所有商品的ID,并将ID存入一个列表中。你可以根据需要修改代码,爬取其他页面的商品ID。注意,这样的大量爬取可能会被京东反爬虫机制检测到,建议使用代理IP和设置合理的访问频率。