![如何从已被禁用的网页复制文本?](https://linux22.com/image/1394673/%E5%A6%82%E4%BD%95%E4%BB%8E%E5%B7%B2%E8%A2%AB%E7%A6%81%E7%94%A8%E7%9A%84%E7%BD%91%E9%A1%B5%E5%A4%8D%E5%88%B6%E6%96%87%E6%9C%AC%EF%BC%9F.png)
我使用带有 noscript 的 FF27,但也欢迎提供适用于 Chrome 的解决方案。
我会使用在线聊天来获得客户支持,如果与提供商发生争议,我希望保留聊天记录。我的信用卡提供商有这样的聊天界面,但已禁用复制文本 - 我猜是使用 javascript(还有其他方法吗?)。我对 JS 一无所知,但我注意到当我选择文本时,选择会在下一个事件(例如单击或一段时间后)消失,我找不到调出上下文菜单的方法,ctrl-c 也不起作用。我想以对其他页面影响最小的方式规避这种情况。我宁愿不安装扩展。
FF 曾经在设置 UI 中有一个选项可以禁用某些 javascript 功能,但该选项已被删除。我发现 about:config 设置可以禁用 JS 覆盖上下文菜单,并禁用剪贴板事件 - 但这两个都是全局的,前者可能会让 Google Docs 等网站变得太乱,不符合我的口味。我还没有看过 Chrome 在非 UI 设置方面提供的内容。我找不到 NoScript 上的任何细粒度 JS 控制,但我认为可以过滤掉禁用复制文本的 JS 代码。
答案1
在 Chrome 或任何流行的现代浏览器中,按 F12 打开开发者工具,然后单击放大镜图标(或其他浏览器中的等效图标)以打开检查模式。移至网页内的内容并指向要复制的特定文本部分。指向区域对应的 HTML 代码将出现在停靠的 Dev Tools 窗口中。双击 HTML 代码即可复制所需的内容。
或者,您可以在 Internet Explorer 中将页面保存为文本文件,然后您可以在文本文件中获取网页内的文本。在 IE 中,选择文件>另存为并在打开的对话框中指定保存类型作为文本文件。
答案2
如果您担心与提供商发生纠纷,那么简单的文本日志可能不是很好的证据。除非有某种方法可以验证该文本确实来自您声称的网站聊天,否则他们很容易争辩说它不是真的。
您可能想改用屏幕截图。只需按下键盘上的“Print Screen”键,然后打开图形程序(如 MSPAINT)并粘贴。您也可以使用文字处理程序(如 Microsoft Word 或 Windows 自带的 WORDPAD)并将其粘贴到其中。
如果文本多于一个屏幕可容纳的内容,请分步操作并截取更多屏幕截图。屏幕截图的一个好处是,您将获得网页的完整图像,显示支持聊天文本确实来自他们的网站和代表。
答案3
如果您使用 Firefox,请尝试打开about:config
并设置dom.event.clipboardevents.enabled
为 false。这也适用于使用 Tynt 等令人讨厌的服务来更改您复制的文本以添加营销文案的网站。
dom.event.clipboardevents.enabled 可让网站在用户从网页复制、粘贴或剪切某些内容时收到通知,并告知用户选择了页面的哪一部分。此首选项可控制 oncopy、oncut 和 onpaste 事件的发出。
答案4
我的答案是:网站如何阻止选择文本以及如何解除阻止?
我发布此帖子是因为这个网站上的答案不会在搜索“复制和粘贴”或“剪贴板”时出现,而这通常是用户(例如,我)搜索的方式。
-moz-user-select
就我而言,它是页面源代码中标签的样式属性中的CSS 属性。
但任何user-select
CSS 属性变体都可能是罪魁祸首。