【发布时间】:2019-07-01 22:05:47
【问题描述】:
我正在为一个网站创建一个网络抓取应用程序,该应用程序使用选项卡标题来过滤表格中显示的信息。在从表中提取数据之前,我需要选择一个特定的过滤器,但是我没有任何运气点击选项卡项目,而我可以点击一个按钮。
我在这个应用程序中使用 puppeteer 和 Cheerio,我已经成功导航到相关页面并在提取数据之前单击了一个按钮,但选项卡标题似乎没有以同样的方式做出反应,尽管它也需要人工用户单击以选择它。
这是我的代码的 sn-p:
const page = await browser.newPage();
await page.goto('https://na.op.gg/summoner/champions/userName=' + 'TheJackal666');
const html = await page.content();
const $ = cheerio.load(html);
//This is the troublesome line
await page.click('#SummonerLayoutContent > div.tabItem.Content.SummonerLayoutContent.summonerLayout-champions > div > div > div.Content.tabItems > div.tabItem.season-13 > div > div.stats-filter > div > div:nth-child(2)');
//The scraping function follows
我希望在执行我的其余抓取功能时,获得与“排名独奏”选项卡标题处于活动状态时显示的信息一致的结果。相反,它当前无法激活该选择器,并在默认的“Total”选项卡标题处于活动状态时抓取显示的数据。
非常感谢您提出的所有建议
【问题讨论】:
标签: javascript web-scraping puppeteer headless-browser