Python手机号码归属地查询代码


Posted in Python onMay 04, 2016

简单的一个例子,是以前用Dephi写的,前不久刚实现了一个在Python中使用Delphi控件来编写界面程序,于是趁热写一个类似的的查询方案。

本实例是通过www.ip138.com这个网站来查询的,这里需要的几个知识点,就是用Python模拟网页提交数据,获得数据返回信息,以及对返回的Html信息进行解析,模拟Http提交,Python自带有一个urllib和urllib2这两个库,相当方便,只是奇怪,为什么不将两个库合并成一个,这样来的更方便。然后就是窗体了,窗体还是用我之前写的一个Python模块DxVcl,就是可以在Python中调用Delphi界面控件的一个模块库。下面就贴上代码,相当简单的!

#-*-coding: gb2312 -*-
import urllib,urllib2,HTMLParser
from DxVcl import*
class MyParser(HTMLParser.HTMLParser):
def reset(self):
self._isInTd = False 
self._retdata = []
HTMLParser.HTMLParser.reset(self)
def handle_starttag(self,tag,attris):
self._isInTd = tag =='td'
def handle_endtag(self,tag):
if self._isInTd:
self._isInTd = False
def handle_data(self,data):
if self._isInTd:
self._retdata.append(data)
class MainForm(Form):
def__init__(self,Owner):
self.Caption ='查询手机归属地'
self.Position =5
self.BorderStyle =3
self.Width =303
self.Height =375
self.lbl = Label(self)
self.lbl.SetProps(Parent = self,Caption ='手机号码')
self.lbl.SetBounds(16,8,60,13)
self.EdtPhone = Edit(self)
self.EdtPhone.SetProps(Parent = self,Text ='')
self.EdtPhone.SetBounds(77,3,121,21)
self.Button1 = Button(self)
self.Button1.SetProps(Parent = self,Caption ='查询')
self.Button1.SetBounds(204,1,75,25)
self.Button1.OnClick = self.Button1Click
self.Memo1 = Memo(self)
self.Memo1.Parent = self
self.Memo1.SetBounds(16,32,263,297) 
def Button1Click(self,Sender):
postdata = urllib.urlencode([('action','mobile'),('mobile',self.EdtPhone.Text)])
req = urllib2.Request('http://www.ip138.com:8080/search.asp')
fd = urllib2.urlopen(req,postdata)
h = fd.read()
my = MyParser()
my.feed(h)
self.Memo1.Lines.Clear()
for data in my._retdata:
self.Memo1.Lines.Add(data)
def main():
FreeConsole()
Application.Initialize()
Application.Title ='查询手机归属'
f = MainForm(Application)
f.Show()
Application.Run()
if__name__=='__main__':
main()

运行之后的界面

Python手机号码归属地查询代码

以上所述是小编给大家介绍的Python手机号码归属地查询代码,希望对大家有所帮助!

Python 相关文章推荐
python使用urllib2提交http post请求的方法
May 26 Python
python脚本实现xls(xlsx)转成csv
Apr 10 Python
python读取oracle函数返回值
Jul 18 Python
解决Linux系统中python matplotlib画图的中文显示问题
Jun 15 Python
Python使用Matplotlib模块时坐标轴标题中文及各种特殊符号显示方法
May 04 Python
python简单验证码识别的实现方法
May 10 Python
django+echart数据动态显示的例子
Aug 12 Python
Python PyPDF2模块安装使用解析
Jan 19 Python
TensorFlow 多元函数的极值实例
Feb 10 Python
python和opencv构建运动检测器的实现
Mar 03 Python
Django debug为True时,css加载失败的解决方案
Apr 24 Python
python使用pymysql模块操作MySQL
Jun 16 Python
图文讲解选择排序算法的原理及在Python中的实现
May 04 #Python
浅谈插入排序算法在Python程序中的实现及简单改进
May 04 #Python
Python中使用插入排序算法的简单分析与代码示例
May 04 #Python
Python中函数参数设置及使用的学习笔记
May 03 #Python
解析Mac OS下部署Pyhton的Django框架项目的过程
May 03 #Python
Python使用urllib2模块抓取HTML页面资源的实例分享
May 03 #Python
Python中字符串的格式化方法小结
May 03 #Python
You might like
用IE远程创建Mysql数据库的简易程序
2006/10/09 PHP
php分页示例代码
2007/03/19 PHP
IStream与TStream之间的相互转换
2008/08/01 PHP
php生成随机密码的几种方法
2011/01/17 PHP
php中大括号作用介绍
2012/03/22 PHP
php中的注释、变量、数组、常量、函数应用介绍
2012/11/16 PHP
dojo 之基础篇
2007/03/24 Javascript
JS target与currentTarget区别说明
2011/08/28 Javascript
js获取某月的最后一天日期的简单实例
2013/06/22 Javascript
js选择并转移导航菜单示例代码
2014/08/19 Javascript
JS实现点击登录弹出窗口同时背景色渐变动画效果
2016/03/25 Javascript
jquery分隔Url的param方法(推荐)
2016/05/25 Javascript
VUEJS实战之构建基础并渲染出列表(1)
2016/06/13 Javascript
JS获取当前使用的浏览器名字以及版本号实现方法
2016/08/19 Javascript
基于pako.js实现gzip的压缩和解压功能示例
2017/06/13 Javascript
JS时间控制实现动态效果的实例讲解
2017/07/31 Javascript
百度小程序自定义通用toast组件
2019/07/17 Javascript
微信小程序批量监听输入框对按钮样式进行控制的实现代码
2019/10/12 Javascript
jQuery实现日历效果
2020/09/11 jQuery
详解在Python中处理异常的教程
2015/05/24 Python
Mac 使用python3的matplot画图不显示的解决
2019/11/23 Python
python实现梯度下降法
2020/03/24 Python
Anaconda3中的Jupyter notebook添加目录插件的实现
2020/05/18 Python
利用python如何实现猫捉老鼠小游戏
2020/12/04 Python
python3中for循环踩过的坑记录
2020/12/14 Python
你不知道的葡萄干处理法、橙蜜处理法、二氧化碳酵母法
2021/03/17 冲泡冲煮
html5指南-4.使用Geolocation实现定位功能
2013/01/07 HTML / CSS
物流管理专业大学生自荐信
2013/10/04 职场文书
农救科工作职责
2013/11/27 职场文书
《小儿垂钓》教学反思
2014/02/23 职场文书
工作保证书范文
2014/04/29 职场文书
党的群众路线教育实践活动个人对照检查材料(校长)
2014/11/05 职场文书
2014年民警工作总结
2014/11/25 职场文书
2015年大学生村官工作总结
2015/04/21 职场文书
Python激活Anaconda环境变量的详细步骤
2021/06/08 Python
入门学习Go的基本语法
2021/07/07 Golang