问题标签 [chromedp]
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.
google-chrome - 如何将 Chrome 无头与 chromedp 一起使用?
我正在使用chromedp,它具有专注于元素、填充文本等功能。Chrome 59 具有跨平台无头支持。它允许在无头/服务器环境中运行 Chrome。要通过 DevTools 远程调试协议使用,请使用 --headless 命令行标志启动一个普通的 Chrome 二进制文件(目前仅限 Linux):
$ google-chrome --headless --disable-gpu --remote-debugging-port=9222 https://www.google.fr
我怎么知道chromedp
要发送 --headless 标志以及其他标志?
google-chrome - 如何使用 chromedp 获取 HTTP 响应正文?
使用github.com/knq/chromedp,一个go
使用 Chrome 调试协议驱动 Web 浏览器的包,我可以导航到网页、更新表单和提交表单,但我需要检索 HTTP 响应正文并且还没有弄清楚如何. 我希望能够检索 JSON 响应(不是 HTML)的 HTTP 响应正文。
通过查看代码,似乎 HTTP 响应正文在CachedResponse.Body
属性中:
并且它应该可以使用:
示例使用cdp.Tasks
如下简单示例。
似乎CachedResponse.Body
可以RequestCachedResponseParams.Do()
通过引用调用来访问RequestCachedResponseParams.CacheID
,但仍然需要以下内容:
- 如何打电话
RequestCachedResponseParams.Do()
-cdp.Tasks
似乎可以使用cdp.ActionFunc()
- 如何访问
RequestCachedResponseParams.CacheID
html - 如何处理网页上的 iframe
我想获取网页上存在的 iframe 的 HTML 源代码。我在 Go 中使用 chromedp 包。如何处理带有 chromedp 包的 iframe?文档很少,所以找不到方法。
链接:
Google-doc以获取有关我的任务的更多详细信息。
go - 如何登录网页并截图
如何使用 chromedp 登录网页并截图。
go - 单击带有 Chromedp 的按钮
我正在尝试使用 Go 库 Chromedp 从网页中抓取一些数据。
我基本上需要点击一个按钮,例如 W3C School 网站上的“点击我”按钮。我需要使用 HTML 标记的value
HTML 属性过滤该按钮input
(因为没有特定的目标 ID,并且大多数 Chromedp 示例都使用基于 ID 属性的选择器)。
以下代码似乎永远挂在初始网页上,而无需单击按钮。
- 为什么下面的代码没有点击按钮?
- Chromedp 是使用一些“标准”xpath 过滤器还是什么?我认为 Chromedp 中选择器的语法是某种标准语法,例如 Selenium,但我找不到了解这些选择器规则的方法。在 Chromedp 选择器中构建过滤器的语法规则是什么?
- Chromedp 的其他文档来源是否不是源代码或 Go 文档?
另外,在运行上面的代码时,我看到了各种各样的日志,但基本上我看到这段日志被一遍又一遍地打印出来,这似乎表明标签不存在,但它确实存在而且我不存在知道如何弄清楚选择器使用什么语法?
go - 如何使用 chromedp 进行代理
我想截取亚马逊等网站的(数千页)屏幕截图。我尝试了一些代码,但在屏幕截图中出现验证码或流量错误。所以我想用chromedp添加代理。
也试过这个,但没有用。
go - 无法获取当前窗口标题
打开后,我尝试在 gmail 收件箱页面上获取 Windows 标题。由于某种原因,标题为空。我究竟做错了什么?Chromedp 用于浏览器自动化。
控制台中的输出:
2019/10/22 08:01:49 超出上下文截止日期
2019/10/22 08:01:49 成功。
标题:
go - 抑制从包生成的错误消息
我正在使用一个 Go 函数,它的工作原理大致如下:
- 它遍历给定的 URL 并搜索字符串
- 为了遍历网站,我使用了Chrome DevTools包。
我的问题是在进行遍历时,它会记录一些错误消息,例如
ERROR: encountered exception 'Uncaught' (287:57)
等等
我必须在控制台中抑制此错误打印。我检查了 chrome-dp 问题,我认为这是一个已知问题,参考:https ://github.com/chromedp/chromedp/issues/374#issuecomment-498015901
如何避免直接打印到控制台?
docker - 如何在 docker 中运行 chromedp
我正在尝试在 docker 中运行chromedp。我的main.go:
Dockerfile:
当我运行它时:
它输出:
所以它不会运行我的 go 应用程序。我希望它chromedp/headless-shell
包含 google-chrome 并且我的 golang 应用程序将通过github.com/chromedp/chromedp成功使用它
更新 1
我添加了缺少的目录:
现在有以下输出,我的应用程序仍然没有运行:
更新 2
看起来CMD ["/app"]
没有运行我的 main.go 文件,因为它没有从中打印任何行。当我手动运行它时:
我看到那个google-chrome
应用程序仍然不存在,嗯....
google-chrome - 从 Chrome 下载流式 m3u8 视频
我试图从下面的 html 代码下载视频。
请注意,我将在 Golang
chromedp
代码中运行它。
可以在以下位置找到https://www.zee5.com/tvshows/details/bhabi-ji-ghar-par-hain/0-6-199/bhabi-ji-ghar-par-hain-episode-343-june-21-2016-full-episode/0-1-532
问题是如果你检查网络选项卡,你会在网络中找到这个
https://netst4z5x-vh.akamaihd.net/i/draco/shows/and_tv/Bhabiji_Ghar_Par_Hai/June/21062016/Bhabiji_Ghar_Par_Hai_Episode_343_Ozee.smil/master.m3u8?hdnea=st=1575885515~exp=1575888515~acl=/*~hmac=8f4d35fe89877d455ae614f88ea9c9cf2241ae6ab1bdbbd1790f8376863fd94d
但是网络选项卡不断发出新的视频请求,因此使以前的每个链接都过时了