node 爬取今日 头条 数据 数据的排版有很多不一样的 怎么爬呢
发布于 8 年前 作者 teenth 5432 次预览 最后一次回复是 8 年前 来自 问答
今日头条 pc端网页的 推荐 热点 科技 等等 栏目 每条数据展示的排版 有些情况下 有区别 该怎么处理 还有 其它新闻类网站呢 这些该怎么爬 我用的 是phantom 爬的 loadPage(‘https://www.toutiao.com/’); async function loadPage(url) { const newsArray = []; driver.get(url); let result = await driver.getPageSource() let channelArr = channelList(result); // 暂时用推荐做实验 getNewsList(driver,channelArr[0]); } function channelList(pageSource) { const $ = cheerio.load(pageSource); eles.each(function (index, element) { let item = $(element).text(); let path = $(element).find(‘a’).attr(‘href’); channelArr.push({channel: item, href: path}) }); return channelArr; } 我现在这种处理 太简单了 感觉没啥用 好多都爬不到
6 回复
https://github.com/GoogleChrome/puppeteer拉取新闻是异步请求的接口, query string参数如下. 其它参数固定, 后面三个是前端计算得来, 为了不掉头发, 直接上headless吧.
@soda-wy 🙏 我在研究下
@XiaozhongLiu 如果抓取其它的新闻呢 如百度 搜狐 新浪呢
@teenth 你还想我给你分别分析一下? 我的头发还不够掉呢, 兄弟. 多自己动动手.
@XiaozhongLi 谢谢 我当时没看明白