python之selenium和xpath简单知晓国服魔兽世界正式服人口普查
最近想玩魔兽世界正式服,想找个联盟部落势均力敌的服务器,然后找到了网站
100多个服务器,这上面还不能筛选,作为程序猿的我,就拿技术搞他。
看了下F12源码,源码里没有数据,就想到xhr、js这东西。
果断 network ,这货的数据果然是用ajax加载的。
但是这个接口里看不到哪个优势这个数据,我估计他那个优势那个td是前端渲染出来的。
看了一眼源码 ,就是这么干的 。
这个是F12的element出来的结果
这是源码的js
这个是Ajax的接口数据
这不太符合我的要求, 所以我决定上selenium,然后在selenium获取到的源码里使用xpath来处理他这个表格,最后写到txt里。(直接写到excel这个技术我还没学),从txt导入到excel里再分析了,后边我再学学数据分析、可视化什么的。
可以上代码了!
#!/usr/bin/pythonfrom selenium.webdriver import Chrome
from lxml import etreeif __name__ == '__main__':url = 'http://wowdata.top/player'web = Chrome()web.get(url)web.implicitly_wait(10)tree = etree.HTML(web.page_source) # selenium 加载页面源代码,给xpathtrs = tree.xpath("//table/tbody/tr")with open('data.txt', 'w', encoding='utf-8') as file_object:for tr in trs:number = tr.xpath("./td[1]/text()") # 编号server_type = tr.xpath("./td[2]//text()") # 服务器类别server_name = tr.xpath("./td[3]//text()") # 服务器名称server_player_count = tr.xpath("./td[4]/text()") # 总人数alliance_player_number = tr.xpath("./td[5]/text()") # 联盟总人数horde_player_number = tr.xpath("./td[6]/text()") # 部落总人数advantage = tr.xpath("./td[7]//text()") # 部落联盟人数优势content = f'{number[0]},{server_type[0]},{server_name[0]},{server_player_count[0]},{alliance_player_number[0]},{horde_player_number[0]},{advantage[0]}'file_object.write(content+'\n')# time.sleep(3600) # 这个地方一开始弄的时候,打开浏览器就关闭了 ,我就给他加个时间不让浏览器关闭,代码都写完了 就给这行注释了web.close()
整到excel就这样的 。
部落优势82个,联盟优势42个,势均力敌9个。
国服还是部落人多啊 。
python之selenium和xpath简单知晓国服魔兽世界正式服人口普查相关推荐
- Python的Selenium安装以及简单的使用
一.下载及安装: 1.打开pycharm,打开File中的Setting. 2.点击左上角的加号,然后输入"selenium"查询即可得到,再单击Install Package 按 ...
- 魔兽世界转服务器显示完成,魔兽世界怀旧服:TAQ变简单了,为什么还是出现了AFK大潮?...
魔兽世界怀旧服在开服一年多以后,即将在2020年12月3日,迎来经典60年代的收官副本-第六阶段纳克萨玛斯大墓地(NAXX).在差不多的时间段内,魔兽世界正式服也将上线全新的9.0版本-暗影国度.囧王 ...
- 魔兽世界服务器同时在线人数,魔兽世界怀旧服国服同时在线人数达到60万,排队30万,即将破百万...
原标题:魔兽世界怀旧服国服同时在线人数达到60万,排队30万,即将破百万 魔兽世界怀旧服开放后,玩家饱受排队的困扰,甚至到现在依然有玩家因为排队没有进入怀旧服体验,排队过于严重也引起了部分玩家的不解, ...
- [Python爬虫] Selenium实现自动登录163邮箱和Locating Elements介绍
前三篇文章介绍了安装过程和通过Selenium实现访问Firefox浏览器并自动搜索"Eastmount"关键字及截图的功能.而这篇文章主要简单介绍如何实现自动登录163邮箱,同时 ...
- python网络爬虫系列教程——Python+PhantomJS +Selenium组合应用
全栈工程师开发手册 (作者:栾鹏) python教程全解 Selenium 是什么?一句话,自动化测试工具.它支持各种浏览器,包括 Chrome,Safari,Firefox 等主流界面式浏览器. 理 ...
- Python爬虫 Selenium实现自动登录163邮箱和Locating Elements介绍
Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...
- Python 爬虫 Selenium 基本使用
Python 爬虫 Selenium 基本使用 1. 基础知识 1.1 下载浏览器驱动 1.2 帮助文档 2. 浏览器操作 2.1 浏览器导航 2.2 窗口和选项卡 2.3 Frames and If ...
- Python爬虫-Selenium(1)
Python爬虫-Selenium(1) @(博客)[python, 爬虫, selenium, Python] Python爬虫-Selenium(1) 前言 前期准备 基础使用 进阶使用 浏览器操 ...
- [Python爬虫] Selenium实现自己主动登录163邮箱和Locating Elements介绍
前三篇文章介绍了安装过程和通过Selenium实现訪问Firefox浏览器并自己主动搜索"Eastmount"keyword及截图的功能.而这篇文章主要简介怎样实现 ...
最新文章
- XML文件读取数据绑定到DropDownList
- c# webBrowser打开pdf问题
- 牛津大学的研究人员首次在人体植入“闭环”生物电子研究系统
- No module named #39tensorflow.contrib#39
- 企业组网为组织带来什么便利性和实用性?—Vecloud微云
- 【移动通信】天线原理
- NYOJ 625 笨蛋的难题(二)
- 五个工业风满满的 Look-alike 算法
- matlab canny边缘,matlab – 定向Canny边缘检测
- python面试题库——3数据库和缓存
- 转: 用 Eclipse 平台进行 C/C++ 开发
- 树莓派的linux系统安装,树莓派安装Linux操作系统
- 编写高效的PyTorch代码技巧(上)
- http协议里的chunked编码与测试
- 深浅拷贝的使用场景分析
- 台型计算机电源电路图,电脑ATX电源控制电路及原理
- 服务器主机本地系统服务受限,Win10系统出现服务主机本地系统网络受限怎么办 如何解决...
- 基于Window Server 2016R2 + AD帐号 + Radius无线网络认证
- openwrt使用tayga/totd实现NAT64/DNS64
- Easy-x的基础教程使用介绍