You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Scrapy shell抓取techmoran创业文章仅返回30条,如何获取全部2880条?

原因说明

你在Chrome开发者工具中匹配到的2880条结果,是页面经过多次滚动加载/分页加载后生成的完整DOM数据。而Scrapy默认发起的是静态HTTP请求,仅能获取到该页面首次加载返回的第一页内容,刚好对应30条文章链接,所以才会出现两者匹配结果数量不一致的情况。

可行解决方法
  • 方案一:遍历静态分页地址
    该站点支持静态分页,翻页时的URL规则为https://techmoran.com/category/startups/page/页码/,按每页30条计算,总共有96页内容。你只需要遍历拼接page/1到page/96的分页URL,逐个请求后用你现有的XPath命令提取链接,就能汇总得到全部2880条结果。
    你可以先在Scrapy Shell中测试请求第二页地址https://techmoran.com/category/startups/page/2/,执行原有XPath确认可以正常拿到30条链接,再编写批量爬取逻辑即可。
  • 方案二:模拟浏览器动态渲染
    如果遇到没有静态分页规则的纯JS动态加载站点,可以搭配Selenium、Playwright或者Scrapy Splash插件,模拟浏览器行为自动滚动页面触发所有内容加载,等完整DOM渲染完成后再执行XPath提取,就能直接拿到全量链接。

抓取过程中请控制请求频率,适当添加请求间隔和随机UA头,避免对站点服务器造成不必要的压力,也能降低被反爬策略拦截的概率。

内容的提问来源于stack exchange,提问作者nhamster

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 00:27:03