一 、BeautifulSoup
BeautifulSoup是一个Python包,用于解析HTML和XML文档。它可以快速而方便地从网页中提取信息,并以易于使用的方式对其进行处理。它支持各种解析器,包括内置的Python解析器和第三方解析器,例如lxml和html5lib。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/46934.html
二、对标签提取代码示列
以下是使用BeautifulSoup解析HTML文档的示例代码:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/46934.html
from bs4 import BeautifulSoup
import requests
url = 'https://www.example.com'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
# 找到所有链接
links = soup.find_all('a')
# 找到特定类的所有元素
rows = soup.find_all('div', class_='row')
在上面的代码中,首先使用requests库获取网页的HTML代码,然后使用BeautifulSoup解析该代码。使用soup.find_all()方法可以查找HTML中的所有匹配元素,然后可以进行后续处理。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/46934.html
三 对标签内容提取代码实例
BeautifulSoup还提供了其他有用的功能,例如寻找元素的父代和子代,修改元素的属性和内容等。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/46934.html
以下是使用BeautifulSoup解析HTML文档,读取元素的属性和内容的示列代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/46934.html
from bs4 import BeautifulSoup
html_code = ' <li>
<div class="item">
<img src="demo" alt="">
<p title=""><a href="" title=demo>demo</a></p>
</div>
</li> '
soup = BeautifulSoup(html_code, 'html.parser')
li_tags = soup.find_all('li')
for li in li_tags:
img_src = li.find('img')['src']
a_href = li.find('a')['href']
a_text = li.find('a').text.strip()
a_title = li.find('a').get('title','')
print(f"img src: {img_src}, a href: {a_href}, a text: {a_text}")
在上面的代码中,html_code 是html 页面中的内容 也可以是html文件直接读取后的字符串,然后使用BeautifulSoup解析该代码。使用soup.find_all()方法查找HTML中的所有匹配元素,比如代码中对查找后的li标签内容元素进行处理,然后可以进行后续处理。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/46934.html