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中IPYTHON入门实例
May 11 Python
浅析python递归函数和河内塔问题
Apr 18 Python
python中hashlib模块用法示例
Oct 30 Python
解决nohup重定向python输出到文件不成功的问题
May 11 Python
Python在图片中插入大量文字并且自动换行
Jan 02 Python
Django 重写用户模型的实现
Jul 29 Python
如何为Python终端提供持久性历史记录
Sep 03 Python
python:目标检测模型预测准确度计算方式(基于IoU)
Jan 18 Python
如何基于Python实现数字类型转换
Feb 07 Python
Python实现播放和录制声音的功能
Aug 12 Python
详解pycharm连接远程linux服务器的虚拟环境的方法
Nov 13 Python
python Xpath语法的使用
Nov 26 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
php调用MySQL存储过程的方法集合(推荐)
2013/07/03 PHP
PHP数组操作――获取数组最后一个值的方法
2015/04/14 PHP
php单例模式的简单实现方法
2016/06/10 PHP
php中照片旋转 (orientation) 问题的正确处理
2017/02/16 PHP
php中加密解密DES类的简单使用方法示例
2020/03/26 PHP
PHP const定义常量及global定义全局常量实例解析
2020/05/28 PHP
CL vs ForZe BO5 第四场 2.13
2021/03/10 DOTA
javascript延时重复执行函数 lLoopRun.js
2007/06/29 Javascript
javascript的键盘控制事件说明
2008/04/15 Javascript
实现png图片和png背景透明(支持多浏览器)的方法
2009/09/08 Javascript
JavaScript删除数组元素的方法
2015/03/20 Javascript
javascript实现汉字转拼音代码分享
2015/04/20 Javascript
AngularJS基础知识笔记之过滤器
2015/05/10 Javascript
avalon js实现仿微博拖动图片排序
2015/08/14 Javascript
jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
2020/04/16 Javascript
JavaScript实现三级级联特效
2017/11/05 Javascript
vue引入ueditor及node后台配置详解
2018/01/03 Javascript
vue.js实现插入数值与表达式的方法分析
2018/07/06 Javascript
NumPy.npy与pandas DataFrame的实例讲解
2018/07/09 Python
python 对key为时间的dict排序方法
2018/10/17 Python
浅谈python多进程共享变量Value的使用tips
2019/07/16 Python
PyQt5多线程刷新界面防假死示例
2019/12/13 Python
pytorch中的自定义反向传播,求导实例
2020/01/06 Python
对Tensorflow中Device实例的生成和管理详解
2020/02/04 Python
浅析matlab中imadjust函数
2020/02/27 Python
浅谈ROC曲线的最佳阈值如何选取
2020/02/28 Python
Django 如何使用日期时间选择器规范用户的时间输入示例代码详解
2020/05/22 Python
html5+css3气泡组件的实现
2014/11/21 HTML / CSS
世界上最悠久的自行车制造商:Ribble Cycles
2017/03/18 全球购物
选购世界上最好的美妆品:Cult Beauty
2017/11/03 全球购物
市场营销管理制度
2014/01/29 职场文书
幼儿园大班教学反思
2014/02/10 职场文书
2014年共青团工作总结
2014/12/10 职场文书
uniapp开发小程序的经验总结
2021/04/08 Javascript
JavaScript选择器函数querySelector和querySelectorAll
2021/11/27 Javascript
redis protocol通信协议及使用详解
2022/07/15 Redis