如何从多个 <p> 标签和 div class 中找到单个 <a href>
How to find a single <a href> from a multiple <p> tags and a div class
我有一个关于 beautifulsoup 的问题。
这就是我的 div 的样子。
<div class="guides__content-container">
<div class="row row-extra-small text-justify">
<div class="small-12 columns">
and then I'll have <p's> that will contain a href
<p>blalba <a href="test"></a> <a href="test1"><a></p>
<p>blalba <a href="test2"></a> <a href="test2"><a></p>
</div>
</div>
</div>
无奈,我只好区分了。
如果有一个,如何为每个 p
获取一个 href?
我是这样开始的。
from bs4 import BeautifulSoup
import requests
class Scrapping:
@staticmethod
def scrappingDrones(target):
req = requests.get(target)
soup = BeautifulSoup(req.text, "html.parser")
link = soup.find({"class" : "small-12 columns"})
print(link)
if __name__ == '__main__':
url = "h"
Scrapping.scrappingDrones(url)
提前致谢!
这可以完成这项工作。我假设您想要每个 p
标记中的第一个 link。如果我错了请告诉我。
divs = soup.find("div", {"class": "small-12"})
paras = divs.find_all("p")
hrefs = []
for para in paras:
anchor = para.find("a")
hrefs.append(anchor.get("href"))
print(hrefs)
输出-
['test', 'test2']
我有一个关于 beautifulsoup 的问题。
这就是我的 div 的样子。
<div class="guides__content-container">
<div class="row row-extra-small text-justify">
<div class="small-12 columns">
and then I'll have <p's> that will contain a href
<p>blalba <a href="test"></a> <a href="test1"><a></p>
<p>blalba <a href="test2"></a> <a href="test2"><a></p>
</div>
</div>
</div>
无奈,我只好区分了。
如果有一个,如何为每个 p
获取一个 href?
我是这样开始的。
from bs4 import BeautifulSoup
import requests
class Scrapping:
@staticmethod
def scrappingDrones(target):
req = requests.get(target)
soup = BeautifulSoup(req.text, "html.parser")
link = soup.find({"class" : "small-12 columns"})
print(link)
if __name__ == '__main__':
url = "h"
Scrapping.scrappingDrones(url)
提前致谢!
这可以完成这项工作。我假设您想要每个 p
标记中的第一个 link。如果我错了请告诉我。
divs = soup.find("div", {"class": "small-12"})
paras = divs.find_all("p")
hrefs = []
for para in paras:
anchor = para.find("a")
hrefs.append(anchor.get("href"))
print(hrefs)
输出-
['test', 'test2']