selenium,webdriver,xpath获取全国各地的邮编
代码要多敲 注释要清晰
其中区号没有拿取出来
看到的朋友可以作为练习
,有好的方法可以在下面留言
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"> </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获取全国各地的邮编的更多相关文章
- selenium webdriver XPath的定位方法练习 !
html 代码: <html> <body> <div id="div1"> <input name="divl1input& ...
- selenium webdriver——XPath 定位
baidu.html代码如下 ....<form id="form" class="fm" action="/s" name=&quo ...
- Selenium Webdriver——Xpath轴定位(preceding)
1.preceding-sibling 选取当前节点之前的所有同级节点 text=出发之前的同级节点: 2.preceding 选取当前节点开始标签之前的所有节点 text=出发节点标签之前的所有i ...
- Python3 Selenium WebDriver网页的前进、后退、刷新、最大化、获取窗口位置、设置窗口大小、获取页面title、获取网页源码、获取Url等基本操作
Python3 Selenium WebDriver网页的前进.后退.刷新.最大化.获取窗口位置.设置窗口大小.获取页面title.获取网页源码.获取Url等基本操作 通过selenium webdr ...
- (java)selenium webdriver学习,选择模块,点击下一页,获取当前url
selenium webdriver学习,选择模块,点击下一页,获取当前url 查找下一页有多种方法,这里列举两种: isSelected()函数用于判断是否点击选中,返回Boolean类型 impo ...
- selenium webdriver 右键另存为下载文件(结合robot and autoIt)
首先感谢Lakshay Sharma 大神的指导 最近一直在研究selenium webdriver右键菜单,发现selenium webdriver 无法操作浏览器右键菜单,如图 如果我想右键另存为 ...
- Selenium的PO模式(Page Object Model)|(Selenium Webdriver For Python)
研究Selenium + python 自动化测试有近两个月了,不能说非常熟练,起码对selenium自动化的执行有了深入的认识. 从最初无结构的代码,到类的使用,方法封装,从原始函数 ...
- Selenium WebDriver 处理table
首先,html table是由 table 元素以及一个或多个 tr.th 或 td 元素组成. for example: 这是一个简单的html table: 源码如下: <html> ...
- Selenium WebDriver 处理cookie
在使用webdriver测试中,很多地方都使用登陆,cookie能够实现不必再次输入用户名密码进行登陆. 首先了解一下Java Cookie类的一些方法. 在jsp中处理cookie数据的常用方法: ...
随机推荐
- kmp(多次无重叠匹配)
http://acm.hdu.edu.cn/showproblem.php?pid=2087 剪花布条 Problem Description 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面 ...
- 2019牛客暑期多校训练营(第一场) - H - XOR - 线性基
https://ac.nowcoder.com/acm/contest/881/H 题意: 给定n个整数,求其中异或和为 \(0\) 的子集的大小的和. 题解思路: 首先转化为每个可以通过异或表示 \ ...
- BUUCTF--新年快乐
测试文件:https://buuoj.cn/files/bbf9f68a97fd551edec384914d4f3fbe/93c43c5c-3d4d-4d17-a9a1-4ffb65ebb2fb.zi ...
- 自定义 异步 IO 非阻塞框架
框架一 自定义Web异步非阻塞框架 suosuo.py #!/usr/bin/env python # -*- coding: utf-8 -*-# # __name__ = Web_Framewor ...
- [CSS布局]简单的CSS三列布局
前言 公司终于可以上外网了,近期在搞RN的东西,暂时脑子有点晕,等过段时间再来写点总结.倒是最近有个新学前端的同学经常会问一些基础知识,工作空闲写了小Demo给他看,全是很基础的知识,纯粹是顺便记录在 ...
- Altium Designer 19 单层显示
PCB视图下,按快捷键L 弹出对话框 选择 view options 选项卡 Single Layer Mode 点击为on 快捷键为Shift + s
- jmeter 参数化4_Function Helper中的函数
Function Helper中的函数: 可作为其他参数化方式的补充项,如:随机数生成的函数${__Random(,,)} 操作路径:操作路径:Options-->Function Helpe ...
- ROS基础学习总结
最近一周因为工程需要,把ROS的一些基础学习了一下,现在做一下总结. 学习资源: #创客智造整理的wiki上的ROS入门教程(中文)https://www.ncnynl.com/category/ro ...
- Android 获取手机(ios,android)的设备唯一码(mac地址, IMEI)
{ /*获取手机(ios,android)的设备唯一码(mac地址, IMEI)2018年02月16日 ⁄ 综合 ⁄ 共 2697字 ⁄ 字号 小 中 大 ⁄ 评论关闭 app中总会用到客户端下载量数 ...
- php strtok()函数 语法
php strtok()函数 语法 作用:逐一分割字符串大理石构件 语法:strtok(string,split) 参数: 参数 描述 string 必需.规定要分割的字符串. split 必需.规定 ...