批量查询ip

代码:

# -*- coding: utf-8 -*-

"""
Module implementing Ip138.
"""

from PyQt4.QtCore import pyqtSignature
from PyQt4.QtGui import QDialog
from PyQt4 import QtCore,QtGui
from Ui_ip138 import Ui_Ip138
import re
import urllib2


class Ip138(QDialog, Ui_Ip138):
"""
Class documentation goes here.
"""
def __init__(self, parent=None):
"""
Constructor

@param parent reference to the parent widget (QWidget)
"""
QDialog.__init__(self, parent)
self.setupUi(self)

@pyqtSignature("")
def on_pushButton_clicked(self):
ips = self.iptextEdit.toPlainText()
iplist = str(ips).split('\n')
for ip in iplist:
self.resulttextEdit.append(u'查询的ip: %s'%ip)
self.resulttextEdit.append(u'%s'%'*'*40)
ip = ip.strip()
self.ip138(ip)

def ip138(self,ip):
response = urllib2.urlopen('http://ip138.com/ips138.asp?ip=%s&action=2'%ip)
p = re.compile(r'.*<li>(.*)</li><li>(.*)</li>.*')
for line in response:
if '<ul class="ul1">' in line:
self.resulttextEdit.append(p.sub(r'\1\n\2',line).decode('gbk'))

if __name__ == "__main__":
import sys
app = QtGui.QApplication(sys.argv)
ui = Ip138()
ui.show()
sys.exit(app.exec_())
posted @ 2015-06-17 14:54  xiewb  阅读(478)  评论(0编辑  收藏  举报