废纸分页XHR 400错误请求

2024-10-02 12:28:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试从https://www.magzter.com/magazines/listAllIssues/503获取所有url

在一组中,页面显示12个杂志并滚动分页,然后继续下12个杂志

调试之后,接下来的请求如下

https://www.magzter.com/magazines/listAllIssues/503/12
https://www.magzter.com/magazines/listAllIssues/503/24

xml Request

但是请求https://www.magzter.com/magazines/listAllIssues/503/12通过

^{pr2}$

在scrapy中是否有这个场景的实现,请提供一个示例脚本。在

或者其他任何一个可以刺激无限滚动并使用scrapy框架的库


Tags: https脚本com框架url示例www场景
1条回答
网友
1楼 · 发布于 2024-10-02 12:28:21

问题是该请求是一个AJAX请求,而不发送它的X-Requested-With: XMLHttpRequest头会使它成为400个错误的请求。无法直接从shell命令行发送头,因此需要启动shell并键入命令来获取带有头的请求

$ scrapy shell  nolog

>>> from scrapy import Request
>>> req = Request("https://www.magzter.com/magazines/listAllIssues/146/12", headers = {"X-Requested-With" : "XMLHttpRequest"})
>>> fetch(req)
>>> response.body
b'\r\n\t<div class="mag-wrap">\r\n    \t<h3></h3>\r\n    \t<ul class="mag-list main-magz">\r\n            <li>\r\n                        <div class="cover-wrap"><a href="https://www.magzter.com/IN/EFY-Enterprises-Pvt-Ltd/Electronics-For-You/Science/183025" onclick="ga(

相关问题 更多 >

    热门问题