Violetttte 2023-07-13 14:48 采纳率: 82.8%
浏览 52
已结题

异步请求的地址404 not found但是response中又有内容,该如何获取response中的内容?

我准备抓取新闻网站中的新闻进行摘要,但是遇到了一些问题。
在我点击网站的新闻的时候并不是跳转到一个新的网页,而是在当前页面直接显示新的内容,即异步请求。请求的url地址如下。

img

但是问题在于,当我跳转到这个请求的地址时,并没有得到具体的内容,而是提示404 not found,如下,

img

然后我去观察控制台中的Response,发现点击这些新闻的时候返回的响应是一些js代码,如下

img

在这些js代码中绑定了新闻的内容。

我现在想问如果我直接去访问请求地址提示我404的话,该怎么办呢,例如我如何能获得具体的响应内容?即使是js代码

  • 写回答

3条回答 默认 最新

  • 木卯彳亍 2023-07-13 17:32
    关注

    你直接读取不就行了

    img

    import requests
    import re
    
    url = 'https://newspaper-pc.suzhou-news.cn/e_papers/show_article_detail?article_id=11884490'
    
    # 发送HTTP请求获取网页内容
    response = requests.get(url)
    
    # 检查响应状态码
    if response.status_code == 200:
        # 获取Response的文本内容
        content = response.text
    
        # 使用正则表达式提取全部文本
        all_text = re.findall(r'>([^<]+)<', content)
    
        # 输出提取的全部文本
        for text in all_text:
            print(text)
    else:
        print('无法访问网页')
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 1月29日
  • 已采纳回答 1月21日
  • 创建了问题 7月13日