机械化和 JavaScript

2023-12-14

我想使用 Mechanize 来模拟浏览具有活动 JavaScript 的网页,包括 DOM 事件和 AJAX,但到目前为止我还没有找到这样做的方法。

我查看了一些支持 JavaScript 的 Python 客户端浏览器,例如 Spynner 和 Zope,但没有一个真正适合我。 Spynner 总是让 PyQt 崩溃,而且 Zope 看起来并不支持 JavaScript。

有没有一种方法可以仅使用 Python 来模拟浏览(无需额外的进程),例如 WATIR 或操作 Firefox 或 Internet Explorer 的库,同时完全支持 Javascript,就像实际浏览页面一样?


我玩过机械化(我喜欢的)的新替代品,叫做幻影JS.

它是一个像 Safari 或 Chrome 一样的完整 Web 工具包浏览器,但它是无头且可编写脚本的。你用javascript编写脚本,而不是python(至少据我所知)。

有一些示例脚本可以帮助您入门。这很像使用 Firebug。我只花了几分钟使用它,但我发现我从一开始就非常高效。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

机械化和 JavaScript 的相关文章

  • 对 UPDATE 行的 POST 请求

    我是 javascript 的新手 所以我正在寻找一些帮助来创建一种拖放地理编码标记的方法 以允许交互式更改地址 我相信通过更新 LOCATION 列行可以实现这一点 第一步是 发送 POST 请求 对吧 好吧 所以我想问是否有人可以给我看
  • Vue: vue-i18n: 无法翻译 keypath 的值,使用 keypath 的值作为默认值

    我正在使用 Vue 我想展示三种语言 英语 他加禄语和宿务语 现在我有错误 无法转换键路径 NavbarMobile home 的值 使用 keypath 的值作为默认值 我通过 console log this i18n locale 检
  • jQuery/JavaScript“this”指针混淆

    当函数时 this 的行为bar被称为让我困惑 请参阅下面的代码 当从单击处理程序调用 bar 时 有什么方法可以将 this 安排为普通的旧 js 对象实例 而不是 html 元素 a class with a method functi
  • 谷歌colab录音,如何实现更精确的方式告诉用户开始对着麦克风说话

    我正在尝试创建一个为机器学习项目录制音频的程序 我想使用 google colab 这样人们就不必在他们的系统上安装或运行任何东西 我在网上找到了这个录制和播放音频的示例 单元格 1 包含用于录制音频的 js 代码和用于将其转换为字节对象的
  • Meteor:即使设置了 ANDROID_HOME 也未设置

    操作系统 Ubuntu 14 04 框架 流星1 1 0 2 应用名称 Songofy 这是输出meteor install sdk android meteor install sdk android Found Android bund
  • Python列表错误还是我错了?

    我构建了一个 3 级嵌套列表 run on Python 3 2 3 32 bit on Win 7 L2 list 0 for i in range 2 L3 list L2 for i in range 3 L4 list L3 for
  • 防止 Firefox Web 通知自动关闭

    我已经在 Firefox 中将 Web 通知与服务器发送的 DOM 事件结合使用 不幸的是 通知在大约两到三秒后消失 我更喜欢 Chrome 的方法 即让消息保持可见 在任何给定时间最多显示三个 直到用户单击通知 这是我所拥有的 windo
  • 如何在Python Selenium中获取WebElement的类名?

    我使用 Selenium WebDriver 来抓取从网页中获取的 用 JavaScript 编写的表格 我正在迭代表行列表 每行可能属于不同的类别 我想获取此类的名称 以便我可以为每一行选择适当的操作 table body table f
  • 在Python中将数组的元素从科学记数法转换为十进制记数法

    我有一个 numpy 数组 其元素采用科学格式 我想将它们转换为十进制格式 我的 numpy 数组如下所示 array 93495052 96955582 98555123 06146193 array 1 00097681e 09 9 9
  • 获取SVG绘图的边界框

    我想提取 SVG 绘图的边界框 由于 Python 已经在系统上可用并且还用于执行其他任务 因此我不想使用 JavaScript 或任何其他语言 我的理解是是否可以计算单个元素的边界框 但我不知道如何计算 整个绘图的边界框只是所有元素的最小
  • 如何将多个画布元素放入一个画布元素中?

    我有多个由 JavaScript 创建的画布元素 我的问题是 如何将多个画布元素放入一个画布元素 干得好 JSfiddle http jsfiddle net Allendar UqxCY 它会抓取每个画布并将它们做成 PNG 的 访问缓冲
  • 如何用 GreaseMonkey 替换 onclick 事件?

    该网站有一个图片库 每次我单击缩略图时 它都会在新选项卡中打开 URL 不是因为我将 Firefox 设置为在新选项卡中打开链接 我只想在同一窗口中打开 URL 缩略图的示例如下 span class thumb a href post i
  • 谷歌地图的灰度

    有没有什么方法可以在不丢失任何其他功能的情况下以灰度显示 Google 地图 通过 Javascript API 嵌入 是的 他们在 api V3 中引入了StyledMaps http code google com apis maps
  • 使用缓存时计算“页面浏览量”或“点击量”

    我有一个叫做show board 在其中 除其他外 我增加了一个字段Board views每次运行时加 1 以计算页面浏览量 问题是当我在该视图上使用 cache page 装饰器时 Board views仅在每次生成新的缓存视图时才会增加
  • 带数字键的 Immutable.js 映射(包括性能测试)

    我在 React Native 应用程序中将 Immutable js 与 Redux 结合使用 元数据 例如查找表 是从服务器获取的 并作为 Immutable Map 保存在应用程序本地 查找值的键是整数 数据库中的主键 当我获取数据时
  • 带有远程解释器的 Python 控制台无法在 PyCharm 中接受输入

    我是使用 PyCharm 进行远程开发的新手 我设置了一个远程环境 除了一个例外之外它工作正常 无法在控制台中接受用户输入 在控制台中运行以下语句时 控制台被阻塞 提示 上一个命令仍在运行 请等待或按控制台中的 Control C 来中断
  • Tizen SDK:找不到变量:tizen

    我正在尝试使用 Tizen SDK 创建一个 Web 应用程序 当我启动应用程序时 一切都很好 但是当我在模拟器上按 后退 按钮时 没有任何反应 并且我看到一条消息 55435 js main js 9 ReferenceError 找不到
  • pyodbc 无法正确处理 unicode 数据

    我确实使用 pyodbc 成功连接了 MySQL 数据库 并且它可以很好地处理 ascii 编码的数据 但是当我打印使用 unicode utf8 编码的数据时 它引发了错误 UnicodeEncodeError ascii codec c
  • 在 Chrome 扩展中使用页面的 Angular JS

    我有一个 HTML 页面 其中有一些使用 Angular 配置的 DOM 现在我正在构建一个 chrome 扩展来修改文本框中的值 element value newValue不起作用 因为文本框是用 Angular 设计的 在阅读了一些资
  • 使用 ASP.Net 和 Ajax 的登录页面

    我正在尝试使用 html ajax 和 ASP NET 制作登录页面 数据确实传递给 ajax 函数 但是当我调试 asp 页面时 用户名和密码以 NULL 发送 该代码应该获取用户名和密码 然后返回用户 ID html页面 div Use

随机推荐

  • 从 $request_body 记录 POST 数据

    我的配置设置可以处理一堆 GET 请求 这些请求呈现的像素可以很好地处理分析和解析查询字符串以进行日志记录 使用额外的第三方数据流 我需要处理对给定 URL 的 POST 请求 该 URL 在其请求正文中具有预期可记录格式的 JSON 我不
  • 如何在 JavaScript 中从多维数组中删除空数组?

    我在从 Google Sheets 中的搜索应用程序的多维数组中删除空数组 对象时遇到问题 我在用getLastRow所以我以为我会避免这个问题 但不幸的是事实并非如此 我的数组如下所示 1 39080000912E11 RSSMA0040
  • 通过 std::bind 传递右值

    我想传递一个右值std bind到 C 0x 中采用右值引用的函数 我不知道该怎么做 例如 include
  • Java、传值、引用变量

    我在理解以下示例中 Java 的 按值传递 操作时遇到问题 public class Numbers static int s ccc 7 static int t ccc 7 public static void calculate in
  • Intel 在哪里记录了 ModR/M 字节中扩展寄存器 (R8-R15) 的编码?

    我用的是官方最新的 英特尔 64 和 IA 32 架构软件开发人员手册合并卷 1 2A 2B 2C 2D 3A 3B 3C 3D 和 4 作为了解x86 64 ISA的机器级编码的参考 第 2 卷第 2 1 3 节中提供的 ModR M 和
  • 从修订历史记录中删除特定文件

    我试图从修订历史记录中删除我无意提交的特定文件 有人可以提供一种方法来做到这一点吗 你需要使用svndumpfilter工具 该过程涉及转储您的存储库 过滤 使用svndumpfilter 你的转储文件 并将结果重新加载到新的存储库中 看本
  • 在哪里可以阅读访客信息

    UPDATE 这个问题暴露了过时的 最糟糕的方法visitors count每个人都应该避免这种情况 使用复杂的计数器 由于我没有找到令人满意的 足够简单 的解决方案 因此我想出了自己的解决方案 创建一个名为的空文件ip txt并在代码中的
  • 用python中的列表替换元素

    在Python中 用另一个列表中的元素替换列表中的元素的最佳方法是什么 例如 我有 a 1 replace this 4 我想更换replace this with 2 3 更换后必须是 a 1 2 3 4 Update 当然 可以用切片来
  • 如何复制 Azure 容器和 Blob

    我正在尝试将所有 blob 复制到不同的存储中 CloudBlobClient srcblobClient sourceStorageAccount CreateCloudBlobClient CloudBlobClient targetB
  • MapFragment:使用后退按钮后性能不佳

    我在使用时遇到性能问题MapFragment与操作栏菜单一起 当满足三个条件时就会出现该错误 Have a MapFragment实例化 从选项菜单触发片段事务 用另一个片段替换地图片段 点击后退按钮并返回到地图片段 现在性能明显下降 平移
  • 使用 ShapedDrawable 将 ColorFilter 应用于 ImageView

    我有一个ImageView with android src设置为ShapedDrawable 即一个白色圆圈 我想要的是给这个上色ImageView在运行时响应一些事件 imgView setColorFilter似乎是解决方案 但使用此
  • 使用 IP 地址从 C# HttpClient 向同一台机器发出 HTTP 请求

    基本上 我需要能够在我所在的同一台计算机上向网站发出 HTTP 请求 而无需修改主机文件来创建指向域名的指针 例如 我在一个网站上运行代码 假设 www bobsoft com 位于服务器上 我需要向位于同一服务器上的 www tedsof
  • 如何在 Sqlite 中将图像存储为 blob 以及如何检索它?

    我想将图像 来自 url 存储到 sqlite 数据库中 为此 我使用 db new DataBase getApplicationContext URL url new URL http sree cc wp content upload
  • 汇编程序不打印读取的字符串

    我编写了以下代码 允许用户输入一个数字并将其打印回来 model tiny stack 100 data userMsg db 13 10 Please enter a number dispMsg db 13 10 You have en
  • 在 Reveal.js 演示文稿末尾重复标题幻灯片

    我想在我的四开本 Reveal js 演示文稿末尾重复我的标题幻灯片 我正在寻找类似的命令title slide或其他东西 Thanks 正如我在评论中已经提到的 您可以使用一些 javascript 代码和 CSS 在演示文稿末尾自动重复
  • Node.js、WebSocket 位置问题?

    我使用 Node 监听 localhost 端口 8000 创建了一个服务器 已验证其运行正常 但我无法访问客户端上的 WebSocket Chrome 5 尝试了各种 Git 存储库 节点 websocket socketIO 文章等的几
  • 在 Go 中解组 XML 元素的异构列表

    我有一个像这样的 XML 文档
  • 如何组织过多的 mysql 表? [关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 我们的开发数据库现在有 263 个表 在开发过程中 我们只与少数人合作 有没有办法将所有表格组织到类似文件夹的东西中 没有办法对 MySQL 有意义的分层组织表 正如其他人所指出的 您
  • 带有发布请求的 swift3 webview

    我正在运行一个学校项目 我是 swift3 的新人 通过搜索 我知道如何将数据从一个视图传递到另一个视图 将数据从 tableview 传递到 webview 在上面的帖子中 他使用 http get 请求将数据传递到网站 然后重新加载 w
  • 机械化和 JavaScript

    我想使用 Mechanize 来模拟浏览具有活动 JavaScript 的网页 包括 DOM 事件和 AJAX 但到目前为止我还没有找到这样做的方法 我查看了一些支持 JavaScript 的 Python 客户端浏览器 例如 Spynne