使用Python实现博客上进行自动翻页

发布时间 - 2026-01-11 02:55:52    点击率:

先上一张代码及代码运行后的输出结果的图!

下面上代码:

# coding=utf-8 
import os
import time
from selenium import webdriver

#打开火狐浏览器 需要V47版本以上的
driver = webdriver.Firefox()#打开火狐浏览器
url = "http://codelife.ecit-it.com"#这里打开我的博客网站
driver.get(url)#设置火狐浏览器打开的网址
time.sleep(2)

#使用xpath进行多路径或多元素定位,用法看官网http://selenium-python.readthedocs.io/locating-elements.html
elem_dh = driver.find_elements_by_xpath("//div[@class='pagination pagination-large']/ul/li/a")
print ("我是刚获取的翻页按钮的路径数组:",elem_dh)
print ("下一页按钮元素:",elem_dh[2])
time.sleep(5)

#获取当前窗口句柄
now_handle = driver.current_window_handle #获取当前窗口句柄
print ("我是当前窗口的句柄:",now_handle)#打印窗口句柄 是一串数字
time.sleep(10)

#循环获取界面
for elem in elem_dh:
  print ("我是翻页按钮上的文本信息:",elem.text)          #获取元素的文本值
  print ("我是翻页按钮的地址",elem.get_attribute('href'))  #获取元素的href属性值
  elem.click()#点击进入新的界面 _blank弹出
  print ("刚翻页完成了!")

time.sleep(20)

代码为了让大家能看清楚是怎么回事,代码我已经加了注解。

运行上面的代码后执行的结果如下:

>>> 我是刚获取的翻页按钮的路径数组: [<selenium.webdriver.firefox.webelement.FirefoxWebElement (session="b4375c0c-a3b7-42b9-aa73-ed513699718e", element="782b0162-44eb-4710-bbeb-fc4402ec7cdc")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="b4375c0c-a3b7-42b9-aa73-ed513699718e", element="40e0eede-4ecb-4d95-850f-aa3e6b18e360")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="b4375c0c-a3b7-42b9-aa73-ed513699718e", element="2665129e-ce82-4018-bfe4-a8a6ac300a19")>]
我是当前窗口的句柄: 2147483652
我是翻页按钮上的文本信息: « 上一页
我是翻页按钮的地址 None
刚翻页完成了!
我是翻页按钮上的文本信息: 2
我是翻页按钮的地址 http://codelife.ecit-it.com/page2
刚翻页完成了!
我是翻页按钮上的文本信息: 下一页 »
我是翻页按钮的地址 http://codelife.ecit-it.com/page2
刚翻页完成了!

很多同学会问运行中是个什么情况,给大家上几张图片:

上图是自动在地址栏输入http:codelife.ecit-it.com,并加载博客站点。

默认加载的是博客第一页的内容哦。

经过等待,等待的过程中千万别走神,否则会错过了哦!上图已经点击了,还好我眼疾手快截到图了。

点击完第二页后就跳转到第二页去了。

观察仔细的同学会发现,我后面有一行代码是后来加上去的。

print ("下一页按钮元素:",elem_dh[2])

加入上面一行代码将可以打印出博客上的”下一页“按钮元素的定位数据。

我们可以看到,下一页的元素信息打印出来了。如果有同学需要只点击”下一页“按钮进行翻页的话,可以用到这个元素数组。

关于元素的定位官网有详细的用法,在此不详细介绍,自备楼梯http://selenium-python.readthedocs.io/locating-elements.html

当然,开发环境大家一写要安装完好,安装的插件比较多,如果上面代码大家进行出错的话,说明大家的开发环境有问题,或是少插件,或是版本号与插件不对应。

本人电脑上的Python版本是3.6.2,安装的pywin32也是3.6版本的。

今天就写到这了,后面再继续跟大家分享,一起进步。


# Python  # 自动翻页  # Python使用Django实现博客系统完整版  # Python采用Django开发自己的博客系统  # python利用文件读写编写一个博客  # 我是  # 翻页  # 下一页  # 句柄  # 火狐  # 完成了  # 博客  # 上图  # 的是  # 加载  # 是个  # 眼疾手快  # 去了  # 在此  # 上一页  # 给大家  # 弹出  # 可以看到  # 详细介绍  # 写到 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: zabbix利用python脚本发送报警邮件的方法  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  Laravel如何创建自定义Artisan命令?(代码示例)  ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】  php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】  在线制作视频网站免费,都有哪些好的动漫网站?  如何在橙子建站上传落地页?操作指南详解  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  Laravel如何处理和验证JSON类型的数据库字段  Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  长沙做网站要多少钱,长沙国安网络怎么样?  Laravel集合Collection怎么用_Laravel集合常用函数详解  利用python获取某年中每个月的第一天和最后一天  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  如何用JavaScript实现文本编辑器_光标和选区怎么处理  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理  如何快速启动建站代理加盟业务?  如何快速搭建安全的FTP站点?  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)  悟空浏览器如何设置小说背景色_悟空浏览器背景色设置【方法】  如何快速搭建高效WAP手机网站?  Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】  iOS中将个别页面强制横屏其他页面竖屏  nginx修改上传文件大小限制的方法  如何将凡科建站内容保存为本地文件?  Laravel如何创建自定义Facades?(详细步骤)  Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】  Laravel如何实现API资源集合?(Resource Collection教程)  html5audio标签播放结束怎么触发事件_onended回调方法【教程】  制作电商网页,电商供应链怎么做?  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】  如何彻底删除建站之星生成的Banner?  米侠浏览器网页图片不显示怎么办 米侠图片加载修复  Laravel如何创建和注册中间件_Laravel中间件编写与应用流程  香港服务器网站卡顿?如何解决网络延迟与负载问题?  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  Laravel模型事件有哪些_Laravel Model Event生命周期详解  Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理  如何在云虚拟主机上快速搭建个人网站?  Linux系统运维自动化项目教程_Ansible批量管理实战  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  装修招标网站设计制作流程,装修招标流程?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  敲碗10年!Mac系列传将迎来「触控与联网」双革新  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?