私がしたいのは、文字列クエリ(検索バーに手作業で入力するのと同じこと)と最初の結果のURL(あれば)を保存することだけです。Duckduckgo API検索結果を取得する
私は似たような質問(Python search scraping)を尋ねてきましたが、Googleの問題では、Duckduckgoの検索APIがどこにも見つからないという問題があります。あなたは私を助けてくれるのですか、これを行うための頑丈な方法を提案できますか?
私がしたいのは、文字列クエリ(検索バーに手作業で入力するのと同じこと)と最初の結果のURL(あれば)を保存することだけです。Duckduckgo API検索結果を取得する
私は似たような質問(Python search scraping)を尋ねてきましたが、Googleの問題では、Duckduckgoの検索APIがどこにも見つからないという問題があります。あなたは私を助けてくれるのですか、これを行うための頑丈な方法を提案できますか?
TL助けたホープは、DRを - - 画面の他の回答者が述べたように、DuckDuckGoのAPIのURLが
http://api.duckduckgo.com/?q=x&format=json
です
https://duckduckgo.com/html/?q= {} SEARCH_TERMS
をこすり
x
あなたが探している検索用語です。
ただし、これはフル検索APIではないことにご注意ください。 DuckDuckGo's API pageには、
と記載されていますが、このAPIにはすべてのリンクは含まれていません。つまり、完全な検索結果APIではなく、DuckDuckGoの結果を即座の回答を超えてアプリケーションに取り込む方法でもありません。 we generate our search resultsのため、残念ながら、結果を完全にシンジケートする権利はありません。同じ理由から、私たちはブランディングなしで結果をフレーミングすることはできません。ガイドラインと私たちとの連絡の詳細についてはour partnerships pageをご覧ください。
これは完全な結果APIではなく、インスタントアンサーAPIです。しかし、そこにはいくつかのWebリンクがあります。公式サイト。
ので
のあなたの述べられた目的は、単なる文字列のクエリ(手で検索バーに入力するのと同等)を提出し、最初の結果(もしあれば)のURLを保存します。
api.duckduckgo.comでは、必要なものは得られません。
あなたの最善の策は、単に非JS、DuckDuckGoのウェブ版をこすりスクリーニングすることはおそらくです:
https://duckduckgo.com/html/?q=x
div.result
またはdiv.web-result
のようなもののセレクタを持つ要素を探しています。
ありがとう、最後の3行は、リンクされた質問の答えに解説されていますか? – Nesa
@ネサ!特に、あなたがpythonでスクリーンスクレイピングをすることに興味があるならば。 – ethanbustad
経験豊富なチップをありがとう。 JSONパラメータを使用するメリットについて気にする必要はありませんか? – ntk4
あなたが検索したいものを変更してください。 JSON
この意志の出力が結果がhttps://api.duckduckgo.com/?q=<your search string>&format=json&pretty=1&no_html=1&skip_disambig=1
私は、これはあなたが
www.api.duckduckgo.com/?q=
を求めているものだと思いますSearch
&形式= JSON &かなり= 1
例: http://api.duckduckgo.com/?q=DuckDuckGo&format=json&pretty=1
応答あなたが最初のリンクのアドレスを見つけることができ、JSONオブジェクトです:
response.Results[0].FirstURL
あなたはhttps://jsonformatter.curiousconcept.com/
に応答を置くことによってそれを見つけることができますが、それは:)
これはhttp://stackoverflow.com/questions/11722465/duckduckgo-api-not-returning-resultsと重複しているようです。 – ethanbustad