Beim sogenannten Webseiten-Crawling werden die in der URL-Adresse angegebenen Netzwerkressourcen aus dem Netzwerk-Stream gelesen und lokal gespeichert. Es gibt viele Bibliotheken in Python, die zum Crawlen von Webseiten verwendet werden können. Lassen Sie uns zunächst urllib.request lernen. (urllib2 in python2.x)
Wir lesen zuerst den folgenden Code: Öffnen Sie die Baidu-Homepage auf Ihrem Computer, klicken Sie mit der rechten Maustaste und wählen Sie „Quellcode anzeigen“. Das Ausgabeergebnis ist genau das gleiche wie bei der Ausführung des obigen Programms. Mit anderen Worten: Die oben genannten Codezeilen haben uns dabei geholfen, den gesamten Code der Baidu-Homepage zu durchsuchen.
#!/usr/bin/python3 # -*- conding:utf-8 -*- __author__ = 'mayi' # 导入urllib.request库 import urllib.request # 向指定的url发送请求,并返回服务器响应的类文件对象 response = urllib.request.urlopen("http://www.baidu.com/") # 类文件对象支持 文件对象的操作方法,如read()方法读取文件全部内容,返回字符串 html = response.read() # 打印字符串 print(html)
Die Ausführungsergebnisse sind genau die gleichen:
#!/usr/bin/python3 # -*- conding:utf-8 -*- __author__ = 'mayi' # 导入urllib.request库 import urllib.request # url 作为Request()方法的参数,构造并返回一个Request对象 request = urllib.request.Request("http://www.baidu.com/") # 向服务器发送这个请求 response = urllib.request.urlopen(request) html = response.read() print(html)
Weitere Header-Informationen hinzufügen
#!/usr/bin/python3 # -*- conding:utf-8 -*- __author__ = 'mayi' # 导入urllib.request库 import urllib.request # chrome 的 User-Agent,包含在 header里 header = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36'} # url 连同 headers,一起构造Request请求,这个请求将附带 chrome 浏览器的User-Agent request = urllib.request.Request("http://www.baidu.com/", headers = header) # 向服务器发送这个请求 response = urllib.request.urlopen(request) html = response.read() print(html)
Eine bestimmte Kopfzeile hinzufügen
可以通过调用Request.add_header() 添加/修改一个特定的header 也可以通过调用Request.get_header()来查看已有的header。
Das obige ist der detaillierte Inhalt vonGrundlagen der Verwendung der Bibliothek urllib.request. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!