国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

使用Python3的urllib庫爬取Ajax加載的頁面實(shí)例

在這個(gè)示例中,我們將使用Python3的urllib庫來爬取一個(gè)使用Ajax加載內(nèi)容的網(wǎng)頁。首先,我們需要查看要爬取的頁面,比如豆瓣電影的分類頁地址:。 打開Python開發(fā)工具IDLE并編寫代碼

在這個(gè)示例中,我們將使用Python3的urllib庫來爬取一個(gè)使用Ajax加載內(nèi)容的網(wǎng)頁。首先,我們需要查看要爬取的頁面,比如豆瓣電影的分類頁地址:。

打開Python開發(fā)工具IDLE并編寫代碼

首先,我們需要打開Python開發(fā)工具IDLE,并新建一個(gè)名為''的文件,然后在其中編寫以下代碼:

import 
url  ''
headers  {
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36 115Browser/6.0.3',
    'Referer': '',
    'Connection': 'keep-alive'
}
req  (url, headersheaders)
res  (req)
content  ().decode('utf8')
print(content)

在代碼中,我們首先定義了要爬取的網(wǎng)頁的URL和請(qǐng)求頭信息。然后,我們創(chuàng)建一個(gè)urllib的Request對(duì)象,并使用該對(duì)象發(fā)送請(qǐng)求獲取網(wǎng)頁內(nèi)容。最后,我們將獲取到的內(nèi)容打印出來。

運(yùn)行代碼并觀察網(wǎng)頁加載情況

現(xiàn)在,我們可以運(yùn)行代碼,并觀察是否成功打印出網(wǎng)頁的內(nèi)容。如果一切順利,你應(yīng)該能夠看到豆瓣電影分類頁的HTML代碼。

使用開發(fā)者模式觀察Ajax請(qǐng)求參數(shù)

接下來,我們需要使用瀏覽器的開發(fā)者模式來觀察Ajax請(qǐng)求發(fā)送的數(shù)據(jù)參數(shù)。打開開發(fā)者模式的方法是按下F12鍵,在Network標(biāo)簽下可以看到發(fā)送的請(qǐng)求數(shù)據(jù)。

觀察請(qǐng)求URL參數(shù)和返回值

觀察發(fā)現(xiàn),每次點(diǎn)擊“加載更多”按鈕時(shí),發(fā)送的請(qǐng)求URL中的start參數(shù)會(huì)遞增,步進(jìn)為20。例如,請(qǐng)求URL可能是_search_subjects?sortUamp;range0,10amp;tagsamp;start0,下一次請(qǐng)求的URL可能是_search_subjects?sortUamp;range0,10amp;tagsamp;start20。

修改代碼以打印電影名稱

根據(jù)觀察到的請(qǐng)求參數(shù)和返回值,我們可以修改代碼來打印出電影的名稱。下面是修改后的代碼:

import 
import json
url  '_search_subjects?sortUamp;range0,10amp;tagsamp;start0'
headers  {
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36 115Browser/6.0.3',
    'Referer': '',
    'Connection': 'keep-alive'
}
req  (url, headersheaders)
res  (req)
content  ().decode('utf8')
dcontent  json.loads(content)
for item in dcontent['data']:
    print(item['title'])

在修改后的代碼中,我們首先更新了要爬取的URL,使其包含了正確的請(qǐng)求參數(shù)。然后,我們解析返回的json格式字符串,并遍歷打印出電影的名稱。

現(xiàn)在,再次運(yùn)行代碼,你應(yīng)該能夠看到多次請(qǐng)求返回的電影名稱。

標(biāo)簽: