为什么我按照书上这样敲得代码,但是还是没找到啊

为什么我按照书上这样敲的代码,但是还是404报错啊
(似乎我的代码从html中出现了{% xxx %}开始就运行不出来了)

img

img

URL拼错了,URL你试试

http://127.0.0.1:8000/detail/2

拼错成了 datail

  • 如果有帮助,可以点击采纳,感谢~

这个是请求页面还是接口,如果是页面,url需要填写路径和页面全名称。

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/243549
  • 除此之外, 这篇博客: 常见爬取网页报错总结中的 1.爬取网页报错提示状态码404,可是在浏览器里可以打开网页 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 这种情况是服务器同时返回200与404的状态码,抓包可以看到有404与200。浏览器访问时,有200不会影响访问,而爬虫程序获取该url的回执状态码404与200,遇到有404,则抛出了HTTP Error 404: Not Found

    网上解答:抓包将状态码200的cookie值贴到代码的headers里,然后urlopen(req)过去就ok

    我的方法:判断是404错误码的同时也判断页面含有关键词。

  • 以下回答由chatgpt基于相关博客总结生成:

    针对出现404错误的情况,可能的解决方案如下:

    1. 确认URL是否正确:404错误通常是由于请求的URL错误或者请求的页面不存在导致的,因此需要检查请求的URL是否正确,包括URL是否拼写正确、是否包含特殊字符等等。

    2. 检查请求头部信息:有些网站会对爬虫进行反爬虫处理,比如要求请求中包含特定的User-Agent等头部信息才能正常访问,因此可能需要检查请求头部信息是否正确。

    3. 检查请求频率:如果请求频率过高,可能会被网站服务器判定为恶意爬虫进行屏蔽,因此需要适当调整爬虫程序的请求频率。

    4. 使用代理IP:在进行爬虫的过程中,可能会被设定一些访问频率的限制,限制IP访问次数等措施,这些因素都可能影响到爬虫的正常访问。使用代理IP可以很好地规避这些问题,提高爬虫的可用性。

    如果以上方法都不能解决404错误的问题,可能需要进一步分析代码,检查是否有其他问题导致。