python爬蟲學習之定向爬取淘寶商品價格,供大家參考,具體內容如下
import requests
import re
def getHTMLText(url):
try:
r = requests.get(url, timeout=30)
r.raise_for_status() #如果發送了一個失敗請求(非200響應),#我們可以通過 Response.raise_for_status() 來拋出異常:
r.encoding= r.apparent_encoding
return r.text
except:
return ""
def parsePage(ilt,html):
try:
plt = re.findall(r'\"view_price\"\:\"[\d\.]*?\"',html) #正則表達式來匹配 "view_price":"\d\."類型的字符串
tlt = re.findall(r'\"raw_title\"\:\".*?\"',html)
#正則表達式來匹配 "raw_title":".*?"類型的字符串,.*?是任意字符的最小匹配
for i in range(len(plt)):
price = eval(plt[i].split(':')[1])
title = eval(tlt[i].split(':')[1])
ilt.append([price,title])
except:
print ("")
def PrintGoodsList(ilt):
tplt = "{:4}\t{:8}\t{:16}"
print (tplt.format("序號","價格","商品名稱"))
count = 0
for g in ilt:
count = count + 1
print (tplt.format(count,g[0],g[1]))
def main():
goods = '書包'
depth = 2
start_url = 'https://s.taobao.com/search?q=' + goods
infoList=[]
for i in range(depth):
try:
url = start_url + '&s=' + str(44*i)
html= getHTMLText(url)
parsePage(infoList,html)
except:
continue
PrintGoodsList(infoList)
main()
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。