我对Python非常陌生,主要是为了从网站获取信息。在这里,我试图从网站的底部得到简短的标题,但无法完全得到它们。
from bfs4 import BeautifulSoup
import requests
url = "http://some-website"
r = requests.get(url)
soup = BeautifulSoup(r.content, "html.parser")
nachrichten = soup.findAll('ul', {'class':'list'})现在我需要另一个findAll来从var "nachrichten“获取所有的链接/a,但是我如何做到这一点呢?
发布于 2016-09-13 21:10:14
如果要在单个列表中使用所有链接,请使用带有select的css选择器:
anchors = soup.select('ul.list a')如果您想要个人列表:
anchors = [ ul.find_all(a) for a in soup.find_all('ul', {'class':'list'})]另外,如果您想要href,您可以确保只找到具有href属性的锚,并提取:
hrefs = [a["href"] for a in soup.select('ul.list a[href]')]使用find_all set href=True i.e ul.find_all(a, href=True)。
发布于 2016-09-13 21:13:15
from bs4 import BeautifulSoup
import requests
url = "http://www.n-tv.de/ticker/"
r = requests.get(url)
soup = BeautifulSoup(r.content, "html.parser")
nachrichten = soup.findAll('ul', {'class':'list'})
links = []
for ul in nachrichten:
links.extend(ul.findAll('a'))
print len(links)希望这能解决您的问题,我认为导入的是bs4。我从来不吃bfs4
https://stackoverflow.com/questions/39478865
复制相似问题