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


Posted in Python onAugust 23, 2017

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

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

下面上代码:

# 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
刚翻页完成了!

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Python 相关文章推荐
Python中处理unchecked未捕获异常实例
Jan 17 Python
使用Python脚本操作MongoDB的教程
Apr 16 Python
Python中json格式数据的编码与解码方法详解
Jul 01 Python
Pandas探索之高性能函数eval和query解析
Oct 28 Python
你眼中的Python大牛 应该都有这份书单
Oct 31 Python
Python实现的将文件每一列写入列表功能示例【测试可用】
Mar 19 Python
python中强大的format函数实例详解
Dec 05 Python
Python datetime和unix时间戳之间相互转换的讲解
Apr 01 Python
tensorflow之自定义神经网络层实例
Feb 07 Python
Python实现石头剪刀布游戏
Jan 20 Python
Django中的DateTimeField和DateField实现
Feb 24 Python
Python的collections模块真的很好用
Mar 01 Python
Python模拟鼠标点击实现方法(将通过实例自动化模拟在360浏览器中自动搜索python)
Aug 23 #Python
Python PyQt5标准对话框用法示例
Aug 23 #Python
Python PyQt5实现的简易计算器功能示例
Aug 23 #Python
Python实现的密码强度检测器示例
Aug 23 #Python
python+selenium+autoit实现文件上传功能
Aug 23 #Python
Django与JS交互的示例代码
Aug 23 #Python
python paramiko模块学习分享
Aug 23 #Python
You might like
如何选购合适的收音机
2021/03/01 无线电
网友原创的PHP模板类代码
2008/09/07 PHP
作为PHP程序员应该了解MongoDB的五件事
2013/06/03 PHP
PHP中使用Memache作为进程锁的操作类分享
2015/03/30 PHP
PHP中配置IIS7实现基本身份验证的方法
2015/09/24 PHP
Yii2框架类自动加载机制实例分析
2018/05/02 PHP
PHP基于PDO扩展操作mysql数据库示例
2018/12/24 PHP
js escape,unescape解决中文乱码问题的方法
2010/05/26 Javascript
基于jquery的图片幻灯展示源码
2012/07/15 Javascript
treepanel动态加载数据实现代码
2012/12/15 Javascript
JavaScript创建一个欢迎cookie弹出窗实现代码
2013/03/15 Javascript
JavaScript对IE操作的经典代码(推荐)
2014/03/10 Javascript
js操作输入框中选择内容兼容IE及其他主流浏览器
2014/04/22 Javascript
js字符串操作方法实例分析
2015/05/06 Javascript
JavaScript中字符串拼接的基本方法
2015/07/07 Javascript
jQuery 常用代码集锦(必看篇)
2016/05/16 Javascript
vue2中使用sass并配置全局的sass样式变量的方法
2018/09/04 Javascript
js中innerText/textContent和innerHTML与target和currentTarget的区别
2019/01/21 Javascript
elementUI 动态生成几行几列的方法示例
2019/07/11 Javascript
Python 的 with 语句详解
2014/06/13 Python
用Python进行行为驱动开发的入门教程
2015/04/23 Python
python妹子图简单爬虫实例
2015/07/07 Python
python基于BeautifulSoup实现抓取网页指定内容的方法
2015/07/09 Python
Python多维/嵌套字典数据无限遍历的实现
2016/11/04 Python
Python利用Django如何写restful api接口详解
2018/06/08 Python
Python实现遗传算法(二进制编码)求函数最优值方式
2020/02/11 Python
浅谈pytorch中torch.max和F.softmax函数的维度解释
2020/06/28 Python
Python爬虫抓取指定网页图片代码实例
2020/07/24 Python
Python 多线程C段扫描、检测 Ping扫描脚本的实现
2020/09/03 Python
Python实现异步IO的示例
2020/11/05 Python
美国男士和女士奢侈品折扣手表购物网站:Certified Watch Store
2018/06/13 全球购物
美国最大婚纱连锁店运营商:David’s Bridal
2019/03/12 全球购物
英国领先的维生素和营养补充剂直接供应商:Healthspan
2019/04/22 全球购物
美国爆米花工厂:The Popcorn Factory
2019/09/14 全球购物
中医专业职业生涯规划书范文
2014/01/04 职场文书
大学生个人求职信例文
2014/07/07 职场文书