首页 > 数据库技术 > 详细

从数据库中随机ip代理,并验证

时间:2018-09-02 16:28:23      阅读:113      评论:0      收藏:0      [点我收藏+]
import pymysql
import requests


class GetRandomIP():
def getip(self):
conn = pymysql.connect(host="localhost", port=3306, user="root", password="liuzhiyu", db="python77",
charset="utf8")
cursor = conn.cursor()

sql=‘select type,ip,port from ipcontent ORDER BY RAND() LIMIT 1‘
cursor.execute(sql)

rows = cursor.fetchall()[0]
type_ipaddress_port = ‘{}://{}:{}‘.format(rows[0], rows[1], rows[2])
print(‘*‘*50,end=‘\n\n‘)
print(‘从数据库中获取的IP为: {}‘.format(type_ipaddress_port))
self.yz_ip(rows[0],rows[1],type_ipaddress_port)
cursor.close()
conn.close()

def yz_ip(self,type,ipaddress,type_ipaddress_port):
print(‘验证ip: {} 是否有效:‘.format(type_ipaddress_port))
try:
response=requests.get(‘http://www.baidu.com‘,proxies={type:type_ipaddress_port}) #proxies={‘HTTP‘:‘HTTP://106.56.102.139:8070‘}
except Exception as e:
print(‘ip: {} 无效,将从数据库中删除‘.format(ipaddress))
self.del_ip(ipaddress)
else:
print(‘状态码: {} (200代表有效)‘.format(response.status_code),end=‘\n\n‘)

def del_ip(self,ip):

conn = pymysql.connect(host="localhost", port=3306, user="root", password="liuzhiyu", db="python77",
charset="utf8")
cursor = conn.cursor()
sql = ‘delete from ipcontent where ip=%s‘
cursor.execute(sql,(ip))
conn.commit()
print(‘删除ip: {} 成功‘.format(ip),end=‘\n\n‘)
cursor.close()
conn.close()


if __name__ == ‘__main__‘:
gr = GetRandomIP()
while 1:
gr.getip()




从数据库中随机ip代理,并验证

原文:https://www.cnblogs.com/inorilzy/p/9574134.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!