python抓取新浪微博,求教!!?
python抓取新浪微博,被挡,用了代理,有10个帐号,10个代理,爬的很慢,大家有什么好的办法,谢谢!!!
回复内容:
http://github.com/zhu327/rss 既然你也用python就直接看代码吧爬这里 http://service.weibo.com/widget/widget_blog.php?uid={uid} 替换uid,无需登录,不会被挡 爬手机端
http://weibo.cn
可以参考下面的代码,来自极客学院,侵删
#-*-coding:utf8-*- import smtplib from email.mime.text import MIMEText import requests from lxml import etree import os import time import sys reload(sys) sys.setdefaultencoding('utf-8') class mailhelper(object): ''' 这个类实现发送邮件的功能 ''' def __init__(self): self.mail_host="smtp.xxxx.com" #设置服务器 self.mail_user="xxxx" #用户名 self.mail_pass="xxxx" #密码 self.mail_postfix="xxxx.com" #发件箱的后缀 def send_mail(self,to_list,sub,content): me="xxoohelper"+"<"+self.mail_user+"@"+self.mail_postfix+">" msg = MIMEText(content,_subtype='plain',_charset='utf-8') msg['Subject'] = sub msg['From'] = me msg['To'] = ";".join(to_list) try: server = smtplib.SMTP() server.connect(self.mail_host) server.login(self.mail_user,self.mail_pass) server.sendmail(me, to_list, msg.as_string()) server.close() return True except Exception, e: print str(e) return False class xxoohelper(object): ''' 这个类实现将爬取微博第一条内容 ''' def __init__(self): self.url = 'http://weibo.cn/u/xxxxxxx' #请输入准备抓取的微博地址 self.url_login = 'https://login.weibo.cn/login/' self.new_url = self.url_login def getSource(self): html = requests.get(self.url).content return html def getData(self,html): selector = etree.HTML(html) password = selector.xpath('//input[@type="password"]/@name')[0] vk = selector.xpath('//input[@name="vk"]/@value')[0] action = selector.xpath('//form[@method="post"]/@action')[0] self.new_url = self.url_login + action data = { 'mobile' : 'xxxxx@xxx.com', password : 'xxxxxx', 'remember' : 'on', 'backURL' : 'http://weibo.cn/u/xxxxxx', #此处请修改为微博地址 'backTitle' : u'微博', 'tryCount' : '', 'vk' : vk, 'submit' : u'登录' } return data def getContent(self,data): newhtml = requests.post(self.new_url,data=data).content new_selector = etree.HTML(newhtml) content = new_selector.xpath('//span[@class="ctt"]') newcontent = unicode(content[2].xpath('string(.)')).replace('http://','') sendtime = new_selector.xpath('//span[@class="ct"]/text()')[0] sendtext = newcontent + sendtime return sendtext def tosave(self,text): f= open('weibo.txt','a') f.write(text + '\n') f.close() def tocheck(self,data): if not os.path.exists('weibo.txt'): return True else: f = open('weibo.txt', 'r') existweibo = f.readlines() if data + '\n' in existweibo: return False else: return True if __name__ == '__main__': mailto_list=['xxxxx@qq.com'] #此处填写接收邮件的邮箱 helper = xxoohelper() while True: source = helper.getSource() data = helper.getData(source) content = helper.getContent(data) if helper.tocheck(content): if mailhelper().send_mail(mailto_list,u"女神更新啦",content): print u"发送成功" else: print u"发送失败" helper.tosave(content) print content else: print u'pass' time.sleep(30)
爬他的移动端页面,当时限制比网页端少。
爬虫程序部署在google app engine多个节点上跑 新浪有开发者平台,有专门的API接口,用爬虫会被屏蔽

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Die Geschwindigkeit der mobilen XML zu PDF hängt von den folgenden Faktoren ab: der Komplexität der XML -Struktur. Konvertierungsmethode für mobile Hardware-Konfiguration (Bibliothek, Algorithmus) -Codierungsoptimierungsmethoden (effiziente Bibliotheken, Optimierung von Algorithmen, Cache-Daten und Nutzung von Multi-Threading). Insgesamt gibt es keine absolute Antwort und es muss gemäß der spezifischen Situation optimiert werden.

Mit einer einzigen Anwendung ist es unmöglich, XML -zu -PDF -Konvertierung direkt auf Ihrem Telefon zu vervollständigen. Es ist erforderlich, Cloud -Dienste zu verwenden, die in zwei Schritten erreicht werden können: 1. XML in PDF in der Cloud, 2. Zugriff auf die konvertierte PDF -Datei auf dem Mobiltelefon konvertieren oder herunterladen.

Es gibt keine integrierte Summenfunktion in der C-Sprache, daher muss sie selbst geschrieben werden. Die Summe kann erreicht werden, indem das Array durchquert und Elemente akkumulieren: Schleifenversion: Die Summe wird für die Schleifen- und Arraylänge berechnet. Zeigerversion: Verwenden Sie Zeiger, um auf Array-Elemente zu verweisen, und eine effiziente Summierung wird durch Selbststillstandszeiger erzielt. Dynamisch Array -Array -Version zuweisen: Zuordnen Sie Arrays dynamisch und verwalten Sie selbst den Speicher selbst, um sicherzustellen, dass der zugewiesene Speicher befreit wird, um Speicherlecks zu verhindern.

Eine Anwendung, die XML direkt in PDF konvertiert, kann nicht gefunden werden, da es sich um zwei grundlegend unterschiedliche Formate handelt. XML wird zum Speichern von Daten verwendet, während PDF zur Anzeige von Dokumenten verwendet wird. Um die Transformation abzuschließen, können Sie Programmiersprachen und Bibliotheken wie Python und ReportLab verwenden, um XML -Daten zu analysieren und PDF -Dokumente zu generieren.

XML kann mithilfe eines XSLT -Konverters oder einer Bildbibliothek in Bilder konvertiert werden. XSLT -Konverter: Verwenden Sie einen XSLT -Prozessor und Stylesheet, um XML in Bilder zu konvertieren. Bildbibliothek: Verwenden Sie Bibliotheken wie Pil oder Imagemagick, um Bilder aus XML -Daten zu erstellen, z. B. Zeichnen von Formen und Text.

XML -Formatierungs -Tools können Code nach Regeln eingeben, um die Lesbarkeit und das Verständnis zu verbessern. Achten Sie bei der Auswahl eines Tools auf die Anpassungsfunktionen, den Umgang mit besonderen Umständen, die Leistung und die Benutzerfreundlichkeit. Zu den häufig verwendeten Werkzeugtypen gehören Online-Tools, IDE-Plug-Ins und Befehlszeilen-Tools.

Um XML -Bilder zu konvertieren, müssen Sie zuerst die XML -Datenstruktur ermitteln, dann eine geeignete grafische Bibliothek (z. B. Pythons Matplotlib) und eine Methode auswählen, eine Visualisierungsstrategie basierend auf der Datenstruktur auswählen, das Datenvolumen und das Bildformat, die Batch -Verarbeitung ausführen oder effiziente Bibliotheken verwenden und schließlich als PNG, JPEG oder SVG nach den Bedürfnissen speichern.

Es gibt keine App, die alle XML -Dateien in PDFs umwandeln kann, da die XML -Struktur flexibel und vielfältig ist. Der Kern von XML zu PDF besteht darin, die Datenstruktur in ein Seitenlayout umzuwandeln, für das XML analysiert und PDF generiert werden muss. Zu den allgemeinen Methoden gehören das Parsen von XML mithilfe von Python -Bibliotheken wie ElementTree und das Generieren von PDFs unter Verwendung der ReportLab -Bibliothek. Für komplexe XML kann es erforderlich sein, XSLT -Transformationsstrukturen zu verwenden. Wenn Sie die Leistung optimieren, sollten Sie Multithread- oder Multiprozesse verwenden und die entsprechende Bibliothek auswählen.
