動態網頁爬蟲

2022-10-08 17:57:11 字數 2480 閱讀 6229

network 記錄的是從開啟瀏覽器的開發者工具到網頁載入完畢之間的所有請求。如果你在網頁載入完畢後開啟,裡面可能就是空的,我們開著開發者工具重新整理一下網頁即可

爬蟲中常用的請求型別有 all、xhr、img 和 media,剩下的了解一下即可:

常用的請求資訊,比如請求的名稱、狀態碼、型別、資料大小和耗時等。這些都比較簡單,我們只要能看懂,知道是什麼意思就行。

由於查詢字串較長,requests.get()方法提供了params引數,能讓我們以字典的形式傳遞鏈結的查詢字串引數,使**看上去更加的整潔明了

也就是說,鏈結中的tt=1641893701852&movieid=251525&pageindex=2&pagesize=20&ordertype=1,可以拆分成乙個字典:

params =

res =requests.get( '

',params=params,

headers=headers

)

import

requests

headers =

params =

res =requests.get(

'',params=params,

headers=headers

)print

(res.text)

print(type(res.text))

res.text 並不是多層級的字典,只是長得像字典的字串罷了.json(j**ascript object notation)是一種輕量級的資料交換格式。 易於人閱讀和編寫,同時也易於機器解析和生成。

json 建構於兩種結構:鍵值對的集合 和 值的有序列表,分別對應 python 裡的字典和列表,這些都是常見的資料結構。大部分現代計算機語言都支援 json,所以 json 是在程式語言之間通用的資料格式。

json 本質上就是乙個字串,只是該字串符合特定的格式要求。也就是說,我們將字典、列表等用字串的形式寫出來就是 json,就像下面這樣:

1#字典

2 dict = 34

#json

5 json = ''6

7#列表8 list = ['

x', '

y', 'z'

]910#

json

11 json = '

["x", "y", "z"]

'

tips:python 字串使用單引號或雙引號沒有區別,但 json 中,字串必須使用英文的雙引號來包裹。

print

(type(res.json()))

#輸出:

res.json()方法的返回的是真正dict(字典),這樣我們就能從中提取資料了

import

requests

headers =

for num in range(1, 6):

params =

".format(num),

"pagesize

": "20"

,

"ordertype

": "1"

} res =requests.get(

'',params=params,

headers=headers

)rest =res.json()

comment_list = rest['

data

']['

list']

for i in

comment_list:

print('

暱稱:

'+i['

nickname'])

print('

'+i['

content

'])

動態網頁爬蟲

方式 優點缺點 分析介面 直接可以請求到資料,不需要做任何解析工作,量少,效能高 分析介面比較複雜,特別是一些通過js混淆的介面,容易被發現是爬蟲 selenium 直接模擬瀏覽器的行為,瀏覽器可以請求到的,使用 selenium 也能請求到,比較穩定 量多,效能低 selenium相當於是乙個機械...

python動態爬蟲 Python動態網頁爬蟲技術

這一講,我將會為大家講解稍微複雜一點的爬蟲,即動態網頁的爬蟲。動態網頁技術介紹 動態網頁爬蟲技術一之api請求法 動態網頁爬蟲技術二之模擬瀏覽器法 google chrome driver安裝 課後作業 關於作者 動態網頁技術介紹 所謂的動態網頁,是指跟靜態網頁相對的一種網頁程式設計技術。靜態網頁,...

python3 動態網頁爬蟲

我們使用python3,主要用到re,requests模組。一般來說爬蟲的流程是這樣 先看網頁源 再找到要爬的字段出現的區域,用正規表示式找到這個字段,再列印或者匯出結果。coding utf 8 import re import urllib.request html response.read ...