Python web scraper,使用 BeautifulSoup 我的链接有问题,链接现在将成为标题故事,但重定向到档案页面

Posted

技术标签:

【中文标题】Python web scraper,使用 BeautifulSoup 我的链接有问题,链接现在将成为标题故事,但重定向到档案页面【英文标题】:Python web scraper, with BeautifulSoup I am having problem with my link , the link is now going to headline story but redirecting to the archives page 【发布时间】:2021-10-07 20:07:10 【问题描述】:

该链接将我重定向到包含其他热门新闻https://www.coindesk.com/news/babel-finance-bets-on-longtime-fintech-hand-to-help-navigate-regulatory-landscape 的档案页面。 .combabel 之间的链接上的标签 news 不应该存在,因为我认为它将新闻标题重定向到另一个页面。

from bs4 import BeautifulSoup
import requests


base_url ='https://www.coindesk.com/news'

source = requests.get(base_url).text

soup = BeautifulSoup(source, "html.parser")       
    
    
articles = soup.find_all(class_ = 'list-item-card post')
    
#print(len(articles))
#print(articles) 

    
for article in articles:
      
    headline = article.h4.text.strip()
    link = base_url + article.find_all("a")[1]["href"]
    text = article.find(class_="card-text").text.strip()
    img_url = base_url+article.picture.img['src']
            
    print(headline)
    print(link)
    print(text)
    print("Image " + img_url)
    ```

【问题讨论】:

【参考方案1】:

发生错误是因为您将基本链接(已包含/news/)连接到绝对网址

为了防止这种情况,您可以使用urllib.parse.urljoin()

在您的示例中,这应该可以解决问题:

from urllib.parse import urljoin

link = urljoin(base_url, article.find_all("a")[1]["href"])

【讨论】:

以上是关于Python web scraper,使用 BeautifulSoup 我的链接有问题,链接现在将成为标题故事,但重定向到档案页面的主要内容,如果未能解决你的问题,请参考以下文章

Azure 中的 Python Web Scraper

Python web scraper,使用 BeautifulSoup 我的链接有问题,链接现在将成为标题故事,但重定向到档案页面

来自 Python All in One for Dummies 的 Python Web scraper 副本上的 HTTP 错误 406

Web Scraper教程(五)爬虫进阶之微博评论的点击「查看更多」爬取

身份验证背后的 Web Scraper

使用web scraper抓取分页内容