Heim > Artikel > Backend-Entwicklung > Python-Codebeispiel zum Erstellen eines Webseiten-Traffic-Tools
Dieser Artikel stellt Ihnen ein kleines Tool vor, das mit Python erstellt wurde und den Webseitenverkehr glätten kann. Der detaillierte Code ist Ihnen beigefügt.
Vorbereitung
Erforderliche Umgebung:
Python3
Starten
Implementieren Sie zunächst eine einfache Version direkt Der obige Code:
import urllib.request import urllib.error #创建get方法 def get(url): code=urllib.request.urlopen(url).code return code if __name__ == '__main__': #设置一些基本属性 url = "http://shua.jb51.net" user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.63 Safari/537.36" headers = {'User-Agent':user_agent} req = urllib.request.Request(url, headers=headers) #记录次数 i = 1 while 1: code = get(url) print('访问:'+str(code)) i = i+1
ist einfach und grob und die IP bleibt unverändert. Es ist leicht, es unten zu finden Proxy-Funktion hinzufügen
Fügen Sie den folgenden Code zur get-Methode hinzu:
Ändern Sie die Hauptmethode:random_proxy = random.choice(proxies) proxy_support = urllib.request.ProxyHandler({"http":random_proxy}) opener = urllib.request.build_opener(proxy_support) urllib.request.install_opener(opener)Das ist fast dasselbe, Wenn die Seite jedoch nicht geöffnet werden kann oder der Agent ausfällt, wird das Programm automatisch beendet. Als nächstes fügen wir die Ausnahmebehandlungsfunktion
if __name__ == '__main__': url = "http://shua.jb51.net" #添加代理列表,可以自行去百度获取 proxies = ["124.88.67.22:80","124.88.67.82:80","124.88.67.81:80","124.88.67.31:80","124.88.67.19:80","58.23.16.240:80"] user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.63 Safari/537.36" headers = {'User-Agent':user_agent} req = urllib.request.Request(url, headers=headers) i = 1 while 1: #添加参数 code = get(url,proxies) print('第'+str(i)+'次代理访问:'+str(code)) i = i+1
Ausnahmebehandlung
hinzu
Definieren Sie die E-Mail-Methode mit E-Mail-Erinnerung senden
Dann ändern wir die Hauptmethode:def mail(txt): _user = "你的账号" _pwd = "你的密码" _to = "收件账号" msg = MIMEText(txt, 'plain', 'utf-8') #标题 msg["Subject"] = "代理失效!" msg["From"] = _user msg["To"] = _to try: #这里我用的qq邮箱 s = smtplib.SMTP_SSL("smtp.qq.com", 465) s.login(_user, _pwd) s.sendmail(_user, _to, msg.as_string()) s.quit() print("Success!") except smtplib.SMTPException as e: print("Falied,%s" % e)Fertig!
if __name__ == '__main__': url = "http://shua.jb51.net" proxies = ["124.88.67.22:80","124.88.67.82:80","124.88.67.81:80","124.88.67.31:80","124.88.67.19:80","58.23.16.240:80"] user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.63 Safari/537.36" headers = {'User-Agent':user_agent} req = urllib.request.Request(url, headers=headers) i = 1 while 1: try: code = get(url,proxies) print('第'+str(i)+'次代理访问:'+str(code)) i = i+1 except urllib.error.HTTPError as e: print(e.code) #添加mail方法 mail(e.code) except urllib.error.URLError as err: print(err.reason) #添加mail方法 mail(err.reason)Fazit
Der Code ist nur 50 Zeilen lang und das Programm kann verbessert werden:
Abschließend werde ich die Arbeit eines anderen Freundes mit Ihnen teilen
Das obige ist der detaillierte Inhalt vonPython-Codebeispiel zum Erstellen eines Webseiten-Traffic-Tools. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!