日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python爬虫淘宝评论_Python爬虫,抓取淘宝商品评论内容

發布時間:2023/12/9 python 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python爬虫淘宝评论_Python爬虫,抓取淘宝商品评论内容 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作為一個資深吃貨,網購各種零食是很頻繁的,但是能否在浩瀚的商品庫中找到合適的東西,就只能參考評論了!今天給大家分享用python做個抓取淘寶商品評論的小爬蟲!

思路

我們就拿“德州扒雞”做為參考目標吧~!如果想抓其他商品的話,自行更換目標即可!打開淘寶,搜索目標,隨便點擊一個商品進入,在點擊累計評論,打開F12開發者工具——網絡,先清除現有的所有內容,然后點擊下一頁評論,在彈出的內容中查找文件中開頭為list_detail_rate.htm的html類型,如下圖所示

這個html中就含有我們需要的內容,左鍵點擊然后選擇響應,就可以看到具體響應內容了!

這里面是一大串包含我們需要的內容在內的源代碼,如果大家有興趣可以提取內容做成json數據,而我們這里只需要評論數據,所以,用正則匹配評論部分就可以了!

開始寫代碼

具體過程就贅述了,新建一個函數,接受店鋪ID(唯一)作為參數,做一個無限循環來翻頁,并以評論時間為判斷是否重復,如果重復則跳出循環(return可以直接跳出循環),整個函數部分代碼如下

# -*- coding=utf-8 -*-

#qq群:542110741

import requests

import re

import time

def get_comment(itemid):

i = 1#開始頁碼

d = []#構建一個列表用于判斷是否繼續循環

lis = []#放置抓取到的內容

while i:

#構建循環用的url

url = 'https://rate.tmall.com/list_detail_rate.htm?itemId={}&order=3&sellerId=1914459560&currentPage={}'.format(itemid,str(i))

html = requests.get(url).text#獲取相關內容的源代碼

pl = re.findall(r'"rateContent":"(.*?)","rateDate"',html)#評論抓取

dat = re.findall(r'"rateDate":"(.*?)","reply"',html)#評論時間抓取

if dat == d or pl ==[]:#判斷是否重復或者是否存在評論

print('==============================')

return lis #跳出循環并返回值

else:

try:

d = dat#沒有重復則將評論時間賦值給d,用于下次循環判斷

except IndexError as e:

continue#出現該錯誤則跳出循環,進行下一次

print("第%d頁評論"%i,pl)#打印評論內容

lis.append(pl)

i += 1

time.sleep(2)#訪問間隔

加入try是因為代碼一直在抽風的跳出index錯誤,后續還可以改進!

作為一個爬蟲愛好者,必然要加深抓取的廣度的,試著將整個頁面的店鋪ID抓取出來!這次簡單,直接抓到json數據,然后用正則匹配,放回列表,因為時間有限,沒有研究出url翻頁的依據,就只抓取了一頁!

def get_id(kw='德州扒雞'):

'''

只抓了首頁44家店鋪的,沒有抓后面頁面,后續需改進

'''

url = 'https://s.taobao.com/search?data-key=s&data-value=44&ajax=true&' \

'_ksTS=1529811793535_1018&callback=jsonp1019&q={}&imgfile=&js=1&' \

'stats_click=search_radio_all:1&initiative_id=staobaoz_20180624&' \

'ie=utf8&bcoffset=4&p4ppushleft=1,48'.format(kw)

html = requests.get(url).text

id_list = re.findall(r',"auctionNids":\[(.*?)\],"ifDoufuAuction"',html,re.S)[0]

return id_list.replace('"','').split(',')

然后開始寫主函數,保存到文檔!運行結果如下

emmm,看評論是可以入手的!哈哈!

最后

想說幾點,一個是自己寫個小爬蟲玩玩可以,做分析也行,但是務必切記不要外傳擴散,很容易進坑!二是淘寶的反爬其實也不是很難,比如上面的爬蟲,并沒有做反爬措施,大家可以拿這個來練練手,記得加入sleep就可以,不要給對方服務器造成壓力為最好!

代碼寫的不好,各路高手請見諒!歡迎大家來一起交流、學習!

總結

以上是生活随笔為你收集整理的python爬虫淘宝评论_Python爬虫,抓取淘宝商品评论内容的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。