如何使用python爬虫获取淘宝信息?

如何使用python爬虫获取淘宝信息?,第1张

如何使用python爬虫获取淘宝信息

之前很多小伙伴都用淘宝进行了采购,如果能够知道各个商品的价格信息,相信很多小伙伴都愿意比对后下单,毕竟优惠的商品总是那么诱人。我们需要用到python爬虫的知识来解决,接下来就一起看看爬取信息的步骤吧。

  • 首先确定个目标,根据某关键词搜索,从获取的页面信息中提取商品标题、价格、发货地点、付款人数、以及点名这些信息,这些信息都是直接在网页源代码中。

  • 那我们就可以先构造url了,先把头头拿过来https://s.taobao.com/search?+q=编码后的字符+&s=(页码 - 1) x 44,url编码可以用urllib.parse.quote(‘字符’)就行了。

    key = '手套'
    key = parse.quote(key)
    url = 'https://s.taobao.com/search?q={}&s={}'
    page = 20
    for i in range(page):
        url_page = url.format(key, i * 44)
        print(url_page)

然后当我们按照正常步骤构造headers请求头,用get()方法获取的时候,用爬虫爬淘宝,需要“假登录”,获取头部headers信息,我们只弄个ua是肯定不行的,然后把弄好的headers作为参数传给qequests.get(url,headers = header)就行了,那该咋弄这个headers啊,右键,打开浏览器抓包工具,然后network,ctrl+r刷新一波,在all里面找到search?开头的,对他进行右键,copy as curl(bash),然后打开https://curl.trillworks.com/,然后粘贴,右边Python requests里直接复制headers!

网页源码请求到了,该提取信息了,由于内容在script中,

title = re.findall(r'"raw_title":"(.*?)"', response)
 
nick = re.findall(r'"nick":"(.*?)"', response)
 
item_loc = re.findall(r'"item_loc":"(.*?)"', response)
 
price = re.findall(r'"view_price":"(.*?)"', response)
 
sales = re.findall(r'"view_sales":"(.*?)"', response)

网页源码请求到了,该提取信息了,由于内容在script中,所以,re !

  • title是标题

  • nick是店铺(这个多了一个哦,然后我看了看,最后一个没用,就切片把最后一个丢了就行)

  • item_loc是地区

  • price是价格

  • sales是付款人数

然后再来一波对应储存就行了,这边推荐您使用csv呢,亲!

写在最后!!!, 大家不要直接copy代码,最起码curl转换的那个请求头得换了!不换的话没办法运行完全的!并且两次请求中间的间隔尽量长一点,我设置的3s, 同时如果在写入文件的时候有indexerror错误,可以尝试重新复制curl来获取请求头!!!!大家一定不要直接复制哈!

以上就是使用Python获取淘宝信息的方法了。本文来源于网络,如有雷同联系作者修改。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/3017750.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-28
下一篇 2022-09-28

发表评论

登录后才能评论

评论列表(0条)

保存