根據mazon函式裡的引數來,爬取相關的書籍,並以json來儲存
import requests
import re
import random
import json
from bs4 import beautifulsoup
import pickle
useagent =
def mazon(text,type=''):
if type!='':
type = '&i='+type
cookies = dict(useid = '123456',token = 'funkystyle')
responsts = requests.get(f'亞馬遜**&ref=nb_sb_noss',headers=useagent,cookies=cookies)
index = responsts.text
buti = beautifulsoup(index,'html.parser')
# print(buti.prettify())
if responsts.status_code==200:
page = re.findall('class="a-disabled">(\d+)',index)
for i in range(1,int(page[-1])+1):
rand =random.randint(1560000000,1570000000)
url = f'亞馬遜**&qid=&ref=sr_pg_'
responst = requests.get(url,headers=useagent)
if responst.status_code!=200:
print(f'執行到第頁請求失敗')
break
content = responst.text
goodslist = re.findall(f'(.*?)',cont,re.s)
title = re.sub('\s+|&.*?;','','-'.join(title))
auther = re.findall('(.*?)',cont,re.s)
price = re.findall('(.*?)',cont,re.s)
price = re.findall('\s+','-'.join(price))
dic_infor =
with open(f'第頁商品.json','at',encoding='utf8') as fa:
json.dump(dic_infor,fa)
fa.flush()
# with open(f'.txt','wt',encoding='utf8') as fw:
# fw.write()
else:
print('首頁訪問失敗!')
# responsts.raise_for_status()
mazon('python')
# with open('第2頁商品.json','rt',encoding='gbk') as fr:
# data = json.load(fr)
# print(data)
爬蟲之小說爬取
以筆趣閣 為例,爬取一念永恆這本 具體 如下 1 from bs4 import beautifulsoup 2from urllib import request 3import requests 4importre5 import sys6 def down this chapter chapt...
爬蟲之爬取微博
3忘記了包含yeild的函式生成器目的是可以作為乙個迭代物件 貼源 importrequests fromurllib.parseimporturlencode frompyqueryimportpyqueryaspq base url header defget page page,value p...
爬蟲之全站爬取方法
方法 做過好幾個關於 全站的專案,這裡總結一下。先把上面那張圖寫下來,全站爬取的兩種方法 關係網路 優點 簡單 可以抓取 熱門 資料 缺點 無法抓取全量資料 速度慢 需要解決去重問題 可行性 比較高 遍歷id 優點 可以抓取所有資料 不用資料去重 缺點 資源消耗大 速度慢 可能被發現 可行性 僅可用...