问题标签 [python-requests-html]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
87 浏览

python - Requesting an API call that requires an oauth token in python

So i'm writing a program that post's data to a url and get's the response. In postman it requires a token. So when I tried to make it in python it's giving me a response [401].

The problem I have is trying to get the token first and then passing it to my post_data method.

I'm going to put *** by the URL and username and password for privacy concerns.

#xA;
0 投票
0 回答
200 浏览

python - Python请求JSONDecodeError:期望值

我正在使用 Python(3.7) 开发一个项目,其中我正在向 API 发出发布请求并尝试读取格式如下的 JSON 响应:

这是我尝试过的:

但它返回一个错误:

json.decoder.JSONDecodeError:期望值:第 1 行第 1 列(字符 0)

这里有什么问题?我试图单独阅读respwith.json但同样的错误。

0 投票
2 回答
1271 浏览

python - python - 在合理的时间内用登录刮掉许多 URL

我正在尝试从需要登录才能查看实际内容的网站上抓取一些数据。一切正常,但每个请求大约需要 5 秒,这对于我的需求来说是一种放慢速度的方式(>5000 个要抓取的 url)。似乎有更快的方法,比如 asyncio aiohttp 模块。但是,我在网上找到的所有示例都没有显示如何登录网站然后使用这些工具。

所以我基本上需要一个易于理解的例子来做这样的事情。

我尝试使用我的代码重建此示例: https ://realpython.com/python-concurrency/#what-is-concurrency ,但它不起作用。我还尝试了 requests_html 中的 AsyncHTMLSession() ,它返回了一些东西,但似乎不记得登录了。

到目前为止,这是我的代码:

0 投票
1 回答
1199 浏览

python-3.6 - 如何使用 Requests-HTML 库单击“下一步”进行分页

我是网络抓取的新手,所以我正在研究一堆不同的方法。其中之一(我最兴奋的一个)是使用 Python 库“requests-html”,它支持 Javascript 内容的呈现。

基本上我想知道如何单击“下一步”按钮进入给定页面以获取更多 JS 呈现的内容。使用示例网页“ https://us-proxy.org/ ”。我可以很容易地获得“下一步”按钮的 xpath,但我不知道如何启动它。

我对“requests-html”的理解是,它基本上是通过控制一个无头 chromium 实例并使用它来使用 Javascript 呈现页面来工作的。到目前为止一切都很好,到目前为止我已经对它进行了一些试验并且效果很好,但是文档中提到它包含分页功能。坦率地说,我似乎无法让它工作,除了说它在那里之外,创作者的文档并没有详细说明。

如果有人可以解释人们如何使用这个库来实现这一点,或者即使他们可以向我指出一些更充实的文档(如果有任何在线文档),我会很高兴。我花了一些时间四处寻找是否可以找到任何东西,但是考虑到它看起来有多么强大,我能够找到的关于“requests-html”的内容却很少。我也检查了 ReadTheDocs,它基本上没有任何信息。我想我可以走出去,稍微解决一下问题并深入研究pyppeteer,但这似乎可能是另一个兔子洞......

---------------------------- 我的示例脚本 ------------------- ---

- - - - - - - - 结尾 - - - - - - - - - - - - - - - - - ---------

由于创建者文档实际上确实提到了“.next()”方法,因此我尝试执行它(如示例脚本中所示)。根据输出,它似乎没有做任何事情(尽管我不知道我是否正确实现了它)。无论我注释掉该行还是保留它,标记搜索的结果都是相同的。它似乎没有推进 JS 呈现的页面。

感谢任何指导或见解。谢谢!

更新:

好的,所以我仔细查看了文档,他们确实提到如果您在渲染调用期间使用“keep_page”选项,您可以与页面交互。这使我找到了 pyppeteers 文档(当然在 requests-html 中使用)的发现路径,这似乎揭示了一个非常简单的 '.click()' 方法,似乎并没有阻塞下一个的 xpath 选择器我喂它的按钮。不幸的是,我仍然没有看到任何证据表明它成功单击了链接,并且我不断收到一条错误消息,提示“RuntimeWarning: coroutine 'clickNext' is never awaited”。

这是我编写的用于单击下一个按钮的简单函数,该按钮现在给我该消息:

-------------------------------------------------- -----

async def clickNext():

-------------------------------------------------- -----

到目前为止,我在异步编程和协程方面的经验为零,所以他的意思是我正在深入研究这一点,但如果有人对我在这方面做错了什么有任何见解,我会很感激你愿意分享的任何信息。谢谢!

0 投票
1 回答
305 浏览

python - 如何在 Windows 上更新 SSL 证书?

我遇到了 python 包的问题requests-html。当包试图下载铬时,我收到一个错误:

ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] 证书验证失败:无法获取本地颁发者证书 (_ssl.c:1056)

这与此处的问题相同,并且已针对 Mac 解决。知道如何在 Windows 上解决此问题吗?万一这很重要,使用 PIP 安装软件包可以正常工作。视窗 8,Python 3.7。

0 投票
1 回答
1138 浏览

python - 在 html_requests 中渲染返回无

我使用了渲染,python_requests 中的链接返回Noneset()

我不知道问题出在哪里?

没有任何错误

0 投票
3 回答
38 浏览

python - 将标题添加到我已抓取的表中

我一直在关注在线教程,但我不想使用标题附带的教程数据,而是想使用以下代码:

我遇到的问题是我的表没有标题,所以它使用第一行作为标题。如何设置“Ride”和“Queue Time”的定义标题?

谢谢

0 投票
1 回答
1495 浏览

javascript - 如何渲染 JS 为 cookie 生成指纹?

本网站使用JS设置cookie。

如何运行 JS 来模拟浏览器以避免 429 错误?

0 投票
2 回答
82 浏览

python - 为什么 BeautifulSoup 找不到 HTML 类?

我正在尝试在 python 中使用 requests 和 BeautifulSoup来抓取这个网站:

我想用 class = 获取文章标签中的所有信息"ficha-jogo"。当我运行下面的代码时,x是一个空列表。

我期待它返回带有 class = 的文章标签中包含的所有标签"ficha-jogo"

0 投票
0 回答
267 浏览

python - 如何在不使用 sellenium 的情况下使用 python 在网络抓取中加载更多结果?

我正在抓取一个使用 javascript 显示无限滚动结果的网站。

我只能得到第一页显示的 10 个结果。当您实际浏览该站点时,当到达第 10 个结果的底部时,会自动加载更多结果。

我只使用python的requests_html库并尝试使用r.render()它呈现javascript,它RunTime error在Spyder Ide中提供然后我尝试在控制台中的cmd中运行,我收到了这个错误:

“pyppeteer.errors.PageError:协议错误:连接已关闭。很可能页面已关闭。”

我尝试寻找 ajax 数据以获取链接并找到,但生成和提供 json 数据很复杂,我想快速抓取结果。

请帮助我,请不要建议 Selenium。我希望一些教程也可以在另一个网站上工作,该网站登录指向一个更复杂的完整 Javascipt 网页,然后如何使用 requests_html 或一些 JavaScript 运行库(如果可用)来处理它。

实际上我想获取结果,因为我想要 20,50 或 100,但由于 jvascript 无限滚动,我只得到 10