python抓取页面数据总结一
时间:2009-01-21 来源:hkebao
1.类A中的一个方法Fun1调用了Func2的方法是这样来写的:
class A:
def start(self):
self.Fun1()
def Fun1():
2.创建一个类的对象然后调用这个类中的一个方法
写一个类
class A:
hostlist={}
log=Log()
def getHost(self):
try:
m=model_host()
lines=m.selectMuti()#调用这个类中的一个方法
except Exception,e:
print str(e)
self.hostlist=""
3.创建多线程抓取记录
class CheckURI(threading.Thread): #通过继承多线程类实现的
def __init__(self,_values): #初始化操作的继承了父类中的方法的
threading.Thread.__init__(self)
self.host = _values[0]
self.uri = _values[1]
def dead(self): #线程关闭的时候执行退出操作的
exit(0)
def run(self): #这个线程真正要做的事情
count = 1
time.sleep(self.period) #此线程休眠一个时间段
如何进行判断这个页面是否是正常的可以通过发送一个HTTP请求操作的:
def Check(self):
FirstTime = time.time()
try:
httpconn = httplib.HTTPConnection(self.host)
httpconn.request(self.method,self.uri)
req = httpconn.getresponse()
httpconn.close()
try:
self.code = float(req.status)
print self.code
except Exception,e:
self.code = 0
self.log.log('CHECK ' + str(e))
except Exception,e:
print str(e)
self.code = 0
self.log.log('CHECK ' + str(e))
finally:
LastTime = time.time()
self.timeconsumes = round((LastTime - FirstTime),2)
sql = "INSERT INTO checklog (host,code,timeconsumes,checktime) values ("
sql += " '" + _host + "',"
sql += " '" + _code + "',"
sql += " '" + _timeconsumes + "',"
sql += " '" + _checktime + "')"
将一条长的SQL进行分割成若干段小的SQL命令啊!
class A:
def start(self):
self.Fun1()
def Fun1():
2.创建一个类的对象然后调用这个类中的一个方法
写一个类
class A:
hostlist={}
log=Log()
def getHost(self):
try:
m=model_host()
lines=m.selectMuti()#调用这个类中的一个方法
except Exception,e:
print str(e)
self.hostlist=""
3.创建多线程抓取记录
class CheckURI(threading.Thread): #通过继承多线程类实现的
def __init__(self,_values): #初始化操作的继承了父类中的方法的
threading.Thread.__init__(self)
self.host = _values[0]
self.uri = _values[1]
def dead(self): #线程关闭的时候执行退出操作的
exit(0)
def run(self): #这个线程真正要做的事情
count = 1
time.sleep(self.period) #此线程休眠一个时间段
如何进行判断这个页面是否是正常的可以通过发送一个HTTP请求操作的:
def Check(self):
FirstTime = time.time()
try:
httpconn = httplib.HTTPConnection(self.host)
httpconn.request(self.method,self.uri)
req = httpconn.getresponse()
httpconn.close()
try:
self.code = float(req.status)
print self.code
except Exception,e:
self.code = 0
self.log.log('CHECK ' + str(e))
except Exception,e:
print str(e)
self.code = 0
self.log.log('CHECK ' + str(e))
finally:
LastTime = time.time()
self.timeconsumes = round((LastTime - FirstTime),2)
sql = "INSERT INTO checklog (host,code,timeconsumes,checktime) values ("
sql += " '" + _host + "',"
sql += " '" + _code + "',"
sql += " '" + _timeconsumes + "',"
sql += " '" + _checktime + "')"
将一条长的SQL进行分割成若干段小的SQL命令啊!
相关阅读 更多 +