卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

使用Python3的urllib庫爬取Ajax加載的頁面實例

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

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

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

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

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和請求頭信息。然后,我們創(chuàng)建一個urllib的Request對象,并使用該對象發(fā)送請求獲取網(wǎng)頁內(nèi)容。最后,我們將獲取到的內(nèi)容打印出來。

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

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

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

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

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

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

修改代碼以打印電影名稱

根據(jù)觀察到的請求參數(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,使其包含了正確的請求參數(shù)。然后,我們解析返回的json格式字符串,并遍歷打印出電影的名稱。

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

標簽: