1. 首页 > 软件园

运用Python3的urllib库爬取Ajax加载的页面实例 python3 urlopen

作者:admin 更新时间:2024-07-31
摘要:在这个示例中,我们将使用Python3的urllib库来爬取一个使用Ajax加载内容的网页。首先,我们需要查看要爬取的页面,比如豆瓣电影的分类页地址:。
打开Python开发工具IDLE并编写代码,运用Python3的urllib库爬取Ajax加载的页面实例 python3 urlopen

 

大家好,本网站为大家提供优质的、全新的游戏攻略,援助大家更愉悦地、更顺手地玩游戏,走过路过不要错过奥。

在这个示例中,我们将使用Python3的urllib库来爬取一个使用Ajax加载内容的网页。起首,我们需要查看要爬取的页面,比如豆瓣电影的分类页地址:。

打开Python开发工具IDLE并编写代码

起首,我们需要打开Python开发工具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)

在代码中,我们起首定义了要爬取的网页的URL和请求头信息。接着,我们创建一个urllib的Request对象,并使用该对象发送请求得到网页内容。最后,我们将得到到的内容打印出来。

运行代码并观察网页加载状况

此刻,我们可以运行代码,并观察是否胜利打印出网页的内容。若果一切顺畅,你应该能够看到豆瓣电影分类页的HTML代码。

使用开发者模式观察Ajax请求参数

接下来,我们需要使用浏览器的开发者模式来观察Ajax请求发送的数据参数。打开开发者模式的技巧是按下F12键,在Network标签下可以看到发送的请求数据。

观察请求URL参数和返回值

观察发现,每次点击“加载更多”按钮时,发送的请求URL中的start参数会递增,步进为20。例如,请求URL可能是_search_subjects?sortUamp;range0,10amp;tagsamp;start0,下一次请求的URL可能是_search_subjects?sortUamp;range0,10amp;tagsamp;start20。

修改代码以打印电影名称

依据观察到的请求参数和返回值,我们可以修改代码来打印出电影的名称。下面是修改后的代码:

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,使其包含了正确的请求参数。接着,我们解析返回的json格式字符串,并遍历打印出电影的名称。

此刻,再次运行代码,你应该能够看到屡次请求返回的电影名称。

版权声明:这篇文章小编将内容由互联网用户自发贡献,本站不承担相关法律职责.如有侵权/违法内容,本站将即刻删除。

大家注意,牢记持续关注本游戏攻略网站,无论兄弟们的支持是我们最大的动力奥,我们会努力提供全网新的游戏攻略教程,加油。

本创作内容,未授权勿转载,必究权责。

免责说明:这篇文章小编将代表的是网站编辑的见解,与本站无关。其原创性、诚实性以及文中陈述文字和内容未经确认,因此对这篇文章小编将以及其中全部或者部份内容文字的诚实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。