1、位址: 豆瓣電影 - 排行榜 - 劇情
2、目標: 電影名稱、電影評分
1、request url(基準url位址) :https:
2、query string(查詢引數)
# 抓取的查詢引數如下:
type:13
# 電影型別
interval_id:
100:
90action:
''start:
0# 每次載入電影的起始索引值 0 20 40 60
limit:
20# 每次載入的電影數量
import requests
0# 獲取隨機headers
defget_headers
(self)
: headers =
return headers
# 獲取頁面
defget_page
(self,params)
:# 返回 python 資料型別
html = requests.get(url=self.url,params=params,headers=self.get_headers())
.json(
) self.parse_page(html)
# 解析並儲存資料
defparse_page
(self,html)
: item =
# html為大列表 [,{},{}]
for one in html:
# 名稱 + 評分
item[
'name'
]= one[
'title'
].strip(
) item[
'score']=
float
(one[
'score'
].strip())
# 列印測試
print
(item)
self.i +=
1# 獲取電影總數
deftotal_number
(self,type_number)
:# f12抓包抓到的位址
url =
''.format
(type_number)
headers = self.get_headers(
) html = requests.get(url=url,headers=headers)
.json(
) total =
int(html[
'total'])
return total
# 獲取所有電影的名字和對應type值
defget_all_type_films
(self)
:# 獲取 型別和型別碼
url =
''headers = self.get_headers(
) html = requests.get(url=url,headers=headers)
.text
re_bds = r''
pattern = re.
compile
(re_bds,re.s)
r_list = pattern.findall(html)
# 存放所有型別和對應型別碼大字典
type_dict =
menu =
''for r in r_list:
type_dict[r[0]
.strip()]
= r[1]
.strip(
)# 獲取input的選單,顯示所有電影型別
menu += r[0]
.strip()+
'|'return type_dict,menu
# 主函式
defmain
(self)
:# 獲取type的值
type_dict,menu = self.get_all_type_films(
) menu = menu +
'\n請做出你的選擇:'
name =
input
(menu)
type_number = type_dict[name]
# 獲取電影總數
total = self.total_number(type_number)
for start in
range(0
,(total+1)
,20):
params =
# 呼叫函式,傳遞params引數
self.get_page(params)
# 隨機休眠1-3秒
time.sleep(random.randint(1,
3))print
('電影數量:'
,self.i)
if __name__ ==
'__main__'
: spider = doubanspider(
) spider.main(
)
Python python抓取豆瓣電影top250
一直對爬蟲感興趣,學了python後正好看到某篇關於爬取的文章,就心血來潮實戰一把吧。實現目標 抓取豆瓣電影top250,並輸出到檔案中 1.找到對應的url 2.進行頁面元素的抓取 3.編寫 第一步 實現抓取第乙個頁面 第二步 將其他頁面的資訊也抓取到 第三步 輸出到檔案 4.5.結果 1 控制台...
python 抓取https豆瓣電影資訊
1 豆瓣 為https,python需要模擬瀏覽器行為,新增請求頭資訊,2 開啟開發者工具,對資訊進行提取 2.1定位到電影資訊頭,先把關注的資訊提取出來 table re.findall r 顯示全部影片 data,re.s print table firsttable table 0 2.2 提...
抓取豆瓣電影Top250影評資料
我們先觀察豆瓣電影top250任意一頁的url位址的格式。先觀察第二頁。豆瓣top page2 熟悉了url格式,下面用urllib庫試著抓取頁面內容 我們以物件導向的編碼方式編寫這個頁面抓取程式。定義乙個類名movietop,在類中定義乙個初始化方法和乙個獲取頁面的方法。我們把一些基本資訊和引數初...