代码要多敲 注释要清晰

其中区号没有拿取出来

看到的朋友可以作为练习

,有好的方法可以在下面留言

from selenium import webdriver
from lxml import etree
import time
#接口分析
# base_url = 'http://www.ip138.com/post/'
# base_url = 'http://www.ip138.com/51/'
#生成浏览器
driver = webdriver.PhantomJS() #拿取邮编信息函数
def youbian(num):
#各地的接口url地址
base_url = 'http://www.ip138.com/%s/'%(num)
#访问
driver.get(base_url)
#把页面生成树结构
tree = etree.HTML(driver.page_source)
#用xpath拿取想要的数据
trs = tree.xpath('//table[@class="t12"]/tbody/tr[@bgcolor="#ffffff"]')
for tr in trs:
#地区和邮编的拿取
diqu = tr.xpath('.//b')
if diqu != []:
diqu = diqu[0].text
number = tr.xpath('.//td/a')
number = number[1].text else:
diqu = tr.xpath('.//td')[0].text
number = tr.xpath('.//td/a')
number = number[0].text #打印出想要的结果
print(diqu,'邮编:' + number) #主进程
if __name__ == '__main__':
#各地的接口号
num = [
10,30,50,3,1,11,13,15,20,21,31,23,35,33,25,
45,43,41,51,53,57,40,61,55,65,85,71,73,81,75,83
]
#遍历接口号 一个一个的传输
for n in num:
youbian(n) '''
树结构分析
tr:市区
<tr bgcolor="#ffffff">
<td>
<a href="guangzhou/">
<b>广州市</b>
</a>
</td> <td>
<a href="/510000/">510000</a>
</td> <td>
<a href="/020/">020</a>
</td> <td colspan="3">&nbsp;</td>
</tr> #地区
<tr bgcolor="#ffffff">
<td>通县</td>
<td>
<a href="/101100/">101100</a>
</td> <td>
<a href="/010/">010</a>
</td>
</tr>
'''

selenium,webdriver,xpath获取全国各地的邮编的更多相关文章

  1. selenium webdriver XPath的定位方法练习 !

    html  代码: <html> <body> <div id="div1"> <input name="divl1input& ...

  2. selenium webdriver——XPath 定位

    baidu.html代码如下 ....<form id="form" class="fm" action="/s" name=&quo ...

  3. Selenium Webdriver——Xpath轴定位(preceding)

     1.preceding-sibling 选取当前节点之前的所有同级节点 text=出发之前的同级节点: 2.preceding 选取当前节点开始标签之前的所有节点 text=出发节点标签之前的所有i ...

  4. Python3 Selenium WebDriver网页的前进、后退、刷新、最大化、获取窗口位置、设置窗口大小、获取页面title、获取网页源码、获取Url等基本操作

    Python3 Selenium WebDriver网页的前进.后退.刷新.最大化.获取窗口位置.设置窗口大小.获取页面title.获取网页源码.获取Url等基本操作 通过selenium webdr ...

  5. (java)selenium webdriver学习,选择模块,点击下一页,获取当前url

    selenium webdriver学习,选择模块,点击下一页,获取当前url 查找下一页有多种方法,这里列举两种: isSelected()函数用于判断是否点击选中,返回Boolean类型 impo ...

  6. selenium webdriver 右键另存为下载文件(结合robot and autoIt)

    首先感谢Lakshay Sharma 大神的指导 最近一直在研究selenium webdriver右键菜单,发现selenium webdriver 无法操作浏览器右键菜单,如图 如果我想右键另存为 ...

  7. Selenium的PO模式(Page Object Model)|(Selenium Webdriver For Python)

            研究Selenium + python 自动化测试有近两个月了,不能说非常熟练,起码对selenium自动化的执行有了深入的认识. 从最初无结构的代码,到类的使用,方法封装,从原始函数 ...

  8. Selenium WebDriver 处理table

    首先,html table是由 table 元素以及一个或多个 tr.th 或 td 元素组成. for example: 这是一个简单的html table: 源码如下: <html> ...

  9. Selenium WebDriver 处理cookie

    在使用webdriver测试中,很多地方都使用登陆,cookie能够实现不必再次输入用户名密码进行登陆. 首先了解一下Java Cookie类的一些方法. 在jsp中处理cookie数据的常用方法: ...

随机推荐

  1. Codeforces 1156D 0-1-Tree ( 并查集 || 树形DP )

    <题目链接> 题目大意: 给定一颗无向树,树的边权只要0/1两种情况,现在问你这棵树上存在多少对有序对<u,v>,满足u-->v的路径上,如果出现边权为1的边之后,就不能 ...

  2. SQL 日期格式化与格式转化

    日期格式化 Select CONVERT(varchar(), GETDATE(), ): :57AM Select CONVERT(varchar(), GETDATE(), ): // Selec ...

  3. 攻防世界--re1

    练习文件下载:https://www.lanzous.com/i5lufub 1.使用IDA打开,进入main函数. 2.转为C代码 可以看到,输入v9之后,与v5比较,判断我们输入的flag是否正确 ...

  4. 141-FMC141-4路 250Msps/16bits ADC, FMC板卡

    FMC141-4路 250Msps/16bits ADC, FMC板卡 一.产品概述: 本板卡基于 FMC 标准板卡,实现 4 路 16-bit/250Msps ADC 功能.遵循 VITA 57 标 ...

  5. 数据库_PXC群集与存储引擎

    1. PXC介绍与群集搭建; 2.数据存储引擎. 一, PXC介绍 1.介绍 PXC(Percona XtraDB Cluster)基于Galara的一台开源软件,应用于解决mysql的高可用集群问题 ...

  6. 《Redis深度历险:核心原理和应用实践》学习笔记一

    1.redis五种数据结构 1.1 String字符串类型,对应java字符串类型 用户信息序列化后,可以用string类型存入redis中批量读写string类型,见效网络消耗数字类型的string ...

  7. HTML5:Canvas-绘制图形

    到本文的最后,你将学会如何绘制矩形,三角形,直线,圆弧和曲线,变得熟悉这些基本的形状.绘制物体到Canvas前,需掌握路径,我们看看到底怎么做. 栅格 在我们开始画图之前,我们需要了解一下画布栅格(c ...

  8. Java使用对象类型作为方法的返回值

  9. ubuntu在线搭建ftp服务器

    转载:https://www.linuxidc.com/Linux/2016-12/138563.htm 在Linux中ftp服务器的全名叫 vsftpd,我们需要利用相关命令来开启安装ftp服务器, ...

  10. Redis服务器中有75%受到恶意软件感染

    尽管由于配置错误的服务器和应用程序而导致新的网络攻击不断出现,但人们仍然忽略安全警告. 近两个月前,中国知名黑客组织东方联盟研究人员警告说,一项针对开放Redis服务器的大规模恶意软件活动现在已经发展 ...