因为有在双十一配主机的计划,所有就产生了采集京东上指定商品信息(主要是价格)的想法。花闲余时间简单学习了下Python,参考了一些其他人的爬虫代码,最终完成一个比较简单的Python爬虫。可以根据商品ID或者搜索关键字爬取商品信息。
主要代码
import requests
from lxml.html import etree
import csv
import time
import datetime
def getHeader(referer):
headers = {
'authority': 'search.jd.com',
'accept': '*/*',
'method': 'GET',
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36',
'x-requested-with': 'XMLHttpRequest',
'sec-fetch-site': 'same-origin',
'sec-fetch-mode': 'cors',
'sec-fetch-dest': 'empty',
'referer': referer,
'accept-language': 'zh-CN,zh;q=0.9',
}
return headers
def collectData(url,keyword):
headers = getHeader(url)
response = requests.get(url, headers=headers) # 获取数据
res_html = etree.HTML(response.text) # 解析数据
total_page = res_html.xpath('.//span[@class="fp-text"]/i/text()')[0].strip()
for i in range(1, int(total_page)*2+