bs4获取a href值
时间: 2024-09-26 12:01:34 浏览: 0
在Python的BeautifulSoup库中,你可以使用`get('a', attrs={'href': True})`这样的方法来获取HTML文档中`<a>`标签的所有`href`属性值。这里的关键在于传递两个参数:第一个参数是你要提取的元素标签名,这里是'a';第二个参数是一个字典,其中键是`href`,值是True,这告诉BeautifulSoup只选择`href`属性存在(非空)的`<a>`标签。
例如:
```python
from bs4 import BeautifulSoup
html_doc = """
<html>
<body>
<a href="https://example.com">Link 1</a>
<a href="/link2">Link 2</a>
</body>
</html>
"""
soup = BeautifulSoup(html_doc, 'html.parser')
a_links = soup.get('a', attrs={'href': True})
for link in a_links:
print(link['href'])
```
这将打印出`https://example.com`和`/link2`。
相关问题
bs4获取a标签里的href
可以使用BeautifulSoup模块中的find_all()方法来获取所有的a标签,然后再使用get()方法获取href属性的值,如下所示:
```python
from bs4 import BeautifulSoup
html = """
<html>
<body>
<a href="https://www.google.com">Google</a>
<a href="https://www.baidu.com">Baidu</a>
<a href="https://www.bing.com">Bing</a>
</body>
</html>
"""
soup = BeautifulSoup(html, 'html.parser')
links = soup.find_all('a')
for link in links:
print(link.get('href'))
```
输出结果为:
```
https://www.google.com
https://www.baidu.com
https://www.bing.com
```
bs4获取标签内的href
可以使用BeautifulSoup库中的find方法来获取标签内的href属性值。例如,假设我们想要获取一个网页中所有a标签的href属性,可以使用以下代码:
```python
from bs4 import BeautifulSoup
import requests
url = 'https://www.example.com'
r = requests.get(url)
soup = BeautifulSoup(r.content, 'html.parser')
links = soup.find_all('a') # 获取所有a标签
for link in links:
href = link.get('href') # 获取href属性值
print(href)
```
这样就可以打印出网页中所有a标签的href属性值了。注意,如果某个a标签没有href属性,则该标签的get方法会返回None。