python爬取豆瓣電影之影視電影分析

2021-08-26 09:39:56 字數 2036 閱讀 9849

1.獲取url

開啟獲取資料網頁-->右鍵檢查-->進到如下介面-->找如下json型別的url網址(key:value)

2.檢視headers部分,獲取url,這個url就是你爬取資料源頭 

3.分析url的引數:

type=tv&tag=%e7%83%ad%e9%97%a8&sort=recommend&page_limit=20&page_start=0

start=0: 表示從第乙個電影開始查詢

limit=20: 表示每一次查詢20部電影

type: 表示影視型別

因此你如果要爬取更多型別的資料,就可以更改type就可以了,我們在這兒僅僅爬取"熱門"型別的資料

此外,我們還需要headers部分的下面的倆個資料

4.python程式碼展示:  需要的模組,requests/json

import requests

import json

headers=

#我們在這爬取前120部影視劇的資訊,start=0;每次查詢20部,查詢6次

i=0while(i<=120):

#更改start的資料,逐步爬取每一頁的資料 (0,20,40,60....120)

url = "

type=tv&tag=%e7%83%ad%e9%97%a8&sort=recommend&page_limit=20&page_start={}"

url = url.format(repr(i)) #格式化start

print(url)

response = requests.get(url,headers=headers) #requests作為python爬取的工具

str = response.content.decode("utf-8") # 返回的是乙個字串

print(str)

#我們需要將str轉化成json資料進行提取你需要的資料

json_dict = json.loads(str) #返回的是乙個字典型別的json資料

#我們要提取的資料有: id titile url rate cover_x這幾部分資料

list = json_dict["subjects"] #輸出json_dict可以到subjects對應的value是乙個序列,序列中存

放的是字典型別,可以提取資料

for l in list:

print(repr(l["id"]) + repr(l["title"]) + repr(l["url"]) + repr(l["rate"]) +

repr(l["cover_x"]))

#將提取的資料寫入到檔案中

with open("douban2.txt","a",encoding="utf-8") as f:

f.write(repr(l["id"]) + "\t" + repr(l["title"]) + "\t" + repr(l["url"]) +

"\t" + repr(l["rate"]) + "\t" + repr(l["cover_x"]) + "\n")

i+=20

5.輸出結果顯示:

豆瓣熱門電影爬取

import requests import json import csv defgetonepagedata page start url headers params response requests.get start url,headers headers,params params i...

Python爬蟲 爬取豆瓣電影(二)

檢視上乙個專案,請看 上乙個專案中獲取到了一定數量的電影url資訊,這次來獲取單個電影的電影詳情。對傳遞的url返回乙個名為soup的beautifulsoup物件 defget url html soup url header request body.get header proxies req...

python爬蟲爬取豆瓣電影資訊

我們準備使用python的requests和lxml庫,直接安裝完之後開始操作 目標爬取肖申克救贖資訊 傳送門 導入庫import requests from lxml import etree 給出鏈結 url 獲取網頁html前端 一行搞定,在requests中已經封裝好了 data reque...