我想抓取以下网站:>>> df
brand style rating
3 Indomie pack 15.0
4 Indomie pack 5.0
我的目标是将新闻稿和文章存储在我以后使用的数据库中。我也在其他新闻网站上做过这件事,并删除了这里的代码以便于阅读(100% 不影响给你的代码)。我的问题是我不知道如何准确地抓取标题、链接和其他数据,因为 html 代码的结构具有不寻常的属性。
以下代码是我处理它的方式。也许有人知道我在抓取时犯了什么错误。非常感谢您的帮助。
https://www.globenewswire.com/NewsRoom
答案 0 :(得分:0)
我从给定的 URL 中提取了 page=1 的所有标题。
<块引用>标题出现在 <a>
中,属性 data-autid
等于 article-url
<a>
选择所有具有上述属性的 findAll()
。<a>
并提取标题,即文本此代码将打印给定 URL 中 page=1 的所有标题。
import requests
import bs4 as bs
url = 'https://www.globenewswire.com/NewsRoom'
resp = requests.get(url)
soup = bs.BeautifulSoup(resp.text, 'lxml')
headlines = soup.findAll('a', attrs={'data-autid': 'article-url'})
for i in headlines:
print(i.text, end="\n")