A simple example was written in Dephi before. Not long ago, I just implemented an interface program using Delphi controls in Python, so I wrote a similar query plan while it was hot.
This example is queried through the website www.ip138.com. Several knowledge points needed here are to use Python to simulate web page submission data, obtain data return information, and to return Html To parse the information and simulate Http submission, Python comes with two libraries, urllib and urllib2, which are quite convenient. I’m just curious, why not merge the two libraries into one, which is more convenient. Then there is the form. The form still uses a Python module DxVcl that I wrote before, which is a module library that can call Delphi interface controls in Python. Paste the code below, it’s quite simple!
#-*-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()
The interface after running
The above is the editor I would like to introduce to you the Python mobile phone number location query code. I hope it will be helpful to you!
For more Python mobile phone number location query sample code related articles, please pay attention to the PHP Chinese website!