注:注释写的比较清楚,大家观看方便,写的不难,可以直接读懂
在进行抓取淘宝商品时,我们可以通过抓包的方式进行分析,选择抓取手机端的最好了,数据没那么多,简单,
分析工具Fiddler2
在分析中我们可以清晰的发现加载都是post方式进行传入相关搜索的数据,然后给你josn的数据,
如下图:
那么既然分析完成后我们直接可以上代码了
#coding=utf8 import urllib import urllib2 import lxml.etree import tool_headers #1.设置请求搜索关键词 postdate="滑膜炎" #2.设置请求链接为手机端淘宝,并且对url进行转码和关键词追加(此链接可以简写 明天再搞) url="https://s.m.taobao.com/search?event_submit_do_new_search_auction=1&_input_charset=utf-8&topSearch=1&atype=b&searchfrom=1&action=home%3Aredirect_app_action&from=1&q=%E6%BB%91%E8%86%9C%E7%82%8E&sst=1&n=20&buying=buyitnow&m=api4h5&abtest=11&wlsort=11&page=1 " #3.设置data数据 postdatas={ "event_submit_do_new_search_auction":1, "_input_charset":"utf-8", "topSearch":"1", "atype":"b", "searchfrom":"1", "action":"home:redirect_app_action", "from":"1", "q":postdate, "sst":"1", "n":"20", "buying":"buyitnow", "m":"api4h5", "abtest":"11", "wlsort":"11", "page":"1" } date = urllib.urlencode(postdatas) #3.发送请求 获取请求数据 request = urllib2.Request(url=url,data=date,headers=tool_headers.tool_headers()) re = urllib2.urlopen(request) html = re.read() # print(html) #4.获取数据 print(html)