问题标签 [duckduckgo]
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.
python-3.x - 如何在 Python 中从 DuckDuckGo 的图像搜索结果中抓取图像
我正在使用 python 创建一个应用程序,它将显示从 DuckDuckGo 的图像搜索结果中抓取的图像。因此,我需要根据搜索获取指向图像的链接列表。问题是构成 DuckDuckGo 的图像搜索结果的 HTML 不包含任何图像标签,而是图像似乎存储在部门标签中。我怎样才能在 python 的帮助下抓取那些该死的图像链接并将它们存储在我程序的变量中?
我希望我的变量看起来像什么:
DuckDuckGo 在其图像搜索结果中的 HTML 结构的可视化
编辑:
当我通过这样做从 URL 中抓取 HTML 时:
它根本不返回任何图像标签。
我正在通过这样做来检查:
输出:
这是什么原因,我该如何解决?
javascript - 在自己的网站上制作 DuckDuckHack 即时回答
我正在尝试查看是否可以在DuckDuckGo主网站的上下文之外使用来自DuckDuckHack Instant Answers 的代码。毕竟,Instant Answer 主要是一个独立的组件,由一些 HTML、CSS 和 Javascript 组成,应该是相对独立且可重用的。
由于 DuckDuckHack 项目处于维护模式,获取信息似乎有点困难:开发者指南中提到的 Slack 和 Forum已被禁用。我试图找出其他人是否试图让 Instant Answers 在其他情况下工作,但我找不到任何东西。有关于编写即时答案的教程,例如使用Perl 和 DuckPAN 工具的教程。我试图让现有的即时答案使用这些工具来工作,但我未能让它正常工作(不确定它们是否仍在维护)。
由于这些工具似乎有点重量级,我认为可以完全绕过它们并尝试直接使用 Instant Answer 中的 HTML、CSS 和 JS。
我已经给了计算器第一枪。我在duckduckgo/zeroclickinfo-goodies存储库的目录share/ goodie/calculator中确定了相关的源代码。HTML 似乎在content.handlebars,然后是calculator.css和calculator.js。我创建了一个纯 HTML 文件,将 HTML 从content.handlebars那里放入并包含对 CSS 文件和 JS 文件的引用。起初,CSS 不起作用,因为如果不添加更多包装器 div,CSS 规则将不适用,当检查 DuckDuckGo 站点时可以很容易地找到这些包装器 div,并且计算器 Instant Answer 可见。添加这些包装器 div 后,计算器 UI看起来或多或少完好无损. 但是,UI 的按钮根本不起作用。
查看 Javascript 控制台,我收到此错误:
显然calculator.jsDDH需要一个对象,但是我不知道该对象应该是什么以及如何创建它。
有谁知道这个DDH变量通常是如何初始化的,或者更一般地说是如何使它工作的?任何对从 DuckDuckHack 为自己的站点重用代码的项目的引用也将受到高度赞赏。
python - 字典中的某些字段未写入 csv 文件
我已经从duckduckgo.com 抓取了结果并将结果存储在标题、链接、描述链接和描述被打印但标题没有被打印
我已经用 print(title) 打印了标题,它给出了输出
它没有给出任何错误
javascript - 在使用它们进行导航的网站上禁用左右箭头 (duckDuckGo)
Duckduckgo.com 具有键盘导航功能,可让您点击左右箭头从网络搜索结果、图片搜索结果、新闻和地图。一切都很好,除非我使用我的 wacom 数位板浏览。如果我使用平板电脑滚动并且我不小心向左或向右滚动了一点,它会发送左右箭头按键,这意味着搜索结果正在所有模式之间交换。它使 DDG 有点无法与平板电脑一起使用。
我编写了一个 tampermonkey 脚本来禁用 keydown 事件,但是虽然它禁用了搜索框文本输入中的左右箭头,但它并没有阻止可怕的左右导航。
ruby - duckduckgo.com 获取指定短语的前 N 个结果,使用 Net::HTTP ruby
我正在尝试使用 Net::HTTP 解析 duckduckgo 搜索的结果并存储数组结果的链接。然而,结果是一个字符串。知道如何将任何其他类型的数据作为结果返回,或者如果没有选项以其他类型获取响应,如何从字符串中获取链接?
javascript - 为跟踪器“https://duckduckgo.com”自动授予存储访问权限
我希望我没有错过某个地方的东西,但我无法理解我正在做的事情到底发生了什么。
我正在编写一个 web 应用程序,在我的应用程序中,我以编程方式打开一个新页面来搜索 duckduckgo 中的内容。我正在使用以下代码window.open("https://duckduckgo.com/?q=something"),这对我有好处。
这一切都很好,但我注意到当这段代码被执行时,在我的控制台中,会记录以下内容:
在“ http://localhost:8000 ”上自动授予跟踪器“ https://duckduckgo.com ”的存储访问权限。
我想知道这意味着什么。
我知道这可能与duckduckgo本身无关,也许只是它们足够好,可以实际记录一些东西并保持透明。
使用时与外部网站准确共享哪些信息window.open?“授予对跟踪器的访问权限”是什么意思?我的控制台中的这个日志来自哪里?外部站点实际上可以在我的当前页面中执行一些 javascript 代码吗?这对我来说似乎很奇怪,而且听起来对隐私来说是灾难性的。
python - 如何使用 Selenium 和 Python 处理 try 循环中的错误
我想使用 selenium 进行搜索,然后在 DDG 搜索结束时单击“更多结果”按钮。
DDG 搜索在显示查询的所有结果时不再显示该按钮。
在没有按钮的情况下,我想退出 try 循环。
我将分享我现在正在尝试的内容。我之前也尝试过这两个选项:If len(button_element) > 0: button_element.click()并且我尝试过If button_element is not None: button_element.click().
我想要使用 Selenium 的解决方案,以便它显示浏览器,因为它有助于调试
这是我的代码,带有可重现的示例:
python - 使用 DDG 获取响应 200 而不是 <418 I'm a Teapot>
前几天我试图从 DDG 抓取搜索结果,但我不断收到响应 418。我怎样才能让它响应 200 或从中获取结果?这是我的代码。

