Python – Einführung in die BeautifulSoup-Bibliothek

零下一度
Freigeben: 2017-06-23 11:14:51
Original
3052 Leute haben es durchsucht

Beautiful Soup analysiert alles, was Sie ihm geben, und erledigt die Baumdurchquerung für Sie. Dabei geht es darum, jeden Knoten im Baum einmal und nur einmal entlang einer bestimmten Suchroute zu besuchen.

Wir nennen die BeautifulSoup-Bibliothek oft bs4. So importieren Sie die Bibliothek: aus bs4 importieren Sie BeautifulSoup. Unter diesen verwendet der Import von BeautifulSoup hauptsächlich die BeautifulSoup-Klasse in bs4.

bs4-Bibliotheksparser

Grundelemente der BeautifulSoup-Klasse

Laufendes Ergebnis:
 1 import requests 2 from bs4 import BeautifulSoup 3  4 res = requests.get('') 5 soup = BeautifulSoup(res.text,'lxml') 6 print(soup.a) 7 # 任何存在于HTML语法中的标签都可以用soup.<tag>访问获得,当HTML文档中存在多个相同<tag>对应内容时,soup.<tag>返回第一个。 8  9 print(soup.a.name)10 # 每个<tag>都有自己的名字,可以通过<tag>.name获取,字符串类型11 12 print(soup.a.attrs)13 print(soup.a.attrs['class'])14 # 一个<tag>可能有一个或多个属性,是字典类型15 16 print(soup.a.string)17 # <tag>.string可以取到标签内非属性字符串18 19 soup1 = BeautifulSoup('<p><!--这里是注释--></p>','lxml')20 print(soup1.p.string)21 print(type(soup1.p.string))22 # comment是一种特殊类型,也可以通过<tag>.string取到
Nach dem Login kopieren

a

{'href': '', 'class': [ 'no -login']} ['no-login']

Anmelden

Hier ist der Kommentar

HTML-Inhaltsdurchlauf der bs4-Bibliothek

HTML The Grundstruktur von

Abwärtsdurchquerung des Tag-Baums

Unter diesen ist der Typ BeautifulSoup der Wurzelknoten des Tag-Baums.

1 # 遍历儿子节点2 for child in soup.body.children:3     print(child.name)4 5 # 遍历子孙节点6 for child in soup.body.descendants:7     print(child.name)
Nach dem Login kopieren
Aufwärtsdurchquerung des Tag-Baums

Laufergebnis:
1 # 遍历所有先辈节点时,包括soup本身,所以要if...else...判断2 for parent in soup.a.parents:3     if parent is None:4         print(parent)5     else:6         print(parent.name)
Nach dem Login kopieren

div

div

Körper

html

[Dokument]

Parallele Durchquerung des Tag-Baums

1 # 遍历后续节点2 for sibling in soup.a.next_sibling:3     print(sibling)4 5 # 遍历前续节点6 for sibling in soup.a.previous_sibling:7     print(sibling)
Nach dem Login kopieren
Prettify()-Methode der BS4-Bibliothek

Die prettify()-Methode kann das Codeformat standardisierter machen, dargestellt durch Suppe.prettify(). Verwenden Sie in PyCharm print(soup.prettify()) zur Ausgabe.

Betriebsumgebung: Mac, Python 3.6, PyCharm 2016.2

Referenz: MOOC-Kurs der Chinesischen Universität „Python Web Crawler and Information Extraction“

Das obige ist der detaillierte Inhalt vonPython – Einführung in die BeautifulSoup-Bibliothek. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage