Wil*_*ill 7 google-custom-search
是否可以强制Google自定义搜索使用默认的逐字模式?
出于我使用它的目的,逐字模式将产生最相关的结果,但用户可能不知道将他们的搜索放在引号中.
我有一个想法,我应该能够在将字符串提交给Google之前使用Javascript添加引号,但我无法弄清楚如何.
任何帮助将非常感激!
最好的选择是使用 PHP 代理或类似的东西来编辑查询,以便添加%22,在发出请求之前将查询转换为“查询”。
header('Content-type: application/json');
# Setup Base URL and array for Parameters
$host = 'https://www.googleapis.com/customsearch/v1?';
$queries = array();
$queries['cx'] = "CSEKey";
$queries['key'] = "YourAPIKey";
# Setup possible incoming params
if (isset($_GET['search_term'])) $queries['q'] = "%22"+ $_GET['search_term']+ "%22";
if (isset($_GET['result_count'])) $queries['result_count'] = $_GET['result_count'];
if (isset($_GET['callback'])) $queries['callback'] = $_GET['callback'];
# Build query and Final URL
$queriesURL = http_build_query($queries);
$finalURL = $host.$queriesURL;
/*
DEBUG generated URL
echo $finalURL;
*/
$response = file_get_contents($finalURL);
echo $response;
?>
Run Code Online (Sandbox Code Playgroud)
我相信这种技术强制逐字模式,因为新的 JSON 响应缺少通常奇怪的建议名称拼写:
"spelling": {
"correctedQuery": "Deo Vandski",
"htmlCorrectedQuery": "\u003cb\u003e\u003ci\u003eDeo Vandski\u003c/i\u003e\u003c/b\u003e"
},
Run Code Online (Sandbox Code Playgroud)
我还看到了一些关于追加的内容&tbs=li:1,但是当我尝试搜索时没有发现任何差异......
| 归档时间: |
|
| 查看次数: |
816 次 |
| 最近记录: |