首页 > 解决方案 > 尝试使用 python、pypeteer 进行 websrap

问题描述

目标是从跟踪 tiktok 关注者的网站中提取信息并将其发布到控制台/发送到不和谐频道。目前使用不和谐来启动它,但让它在控制台中打印。下面列出的当前代码打印:

[<pyppeteer.element_handle.ElementHandle 对象在 0x00000214B2703640>]

@bot.command()
async def stats(ctx):
    statspage = await browser.newPage()
    await statspage.goto('https://livecounts.io/tiktok-live-follower-counter/charlieputh')
    t = await statspage.xpath('//*[@id="__next"]/div/div/div[3]/div[2]/div/div/div/div')
    print(t)

我希望它返回该页面上列出的关注者数量。请帮忙。

标签: pythondiscord.pypyppeteer

解决方案


page.xpath函数为您提供元素的列表,而不是文本。如果要获取元素的文本,则需要对其进行评估,例如:

elements = await statspage.xpath('//*[@id="__next"]/div/div/div[3]/div[2]/div/div/div/div')
text = await page.evaluate("e => e.innerText", elements[0])

您可能知道,pyppeteer 是 puppeteer 的非官方 Python 版本,因此您应该查看 puppeteer 的文档以了解它是如何工作的。还有pyppeteer的文档,看看 Python 版本有什么不同。


推荐阅读