我仔细查看了
Pratik Chowdhury和
Robbie Vercammen的答案。他们提供了一个链接,其中列出了在Google搜索表单中使用的可能的文本过滤器列表。尽管这很有趣,但他们没有回答问题。因此,我认真研究了这个问题,并找到了以下解决方案。
假设您需要进行一次
一次性HTTP调用(例如通过每月运行的PHP类来运行CRON),以便检索特定字符串查询的搜索结果,例如所有包含某些单词(即“hello”和“world”)的页面(即
mywebsite.com),那么您可以对以下地址进行HTTP get调用:
http://www.google.com/search?q=hello+world+site:mywebsite.com
q
参数可以包含整个搜索查询,但是Google定义了一个“dummy proof”参数列表。
请注意,AND
运算符可以由as_q
参数代替表示。
要获取页面结果中“hello”和“world”之间任意一个(即OR),必须将查询“q”参数更改为:
q=hello+OR+world
更紧凑的表示使用as_oq
参数:
as_oq=hello+world
如果要查找确切的短语“hello world”,则
q
参数为:
q="hello+world"
另一种紧凑表示法使用as_epq
参数:
as_epq=hello+world
如果想要查找不包含“hello”和“world”这两个词的所有结果,q
参数应为:
q=-hello+-world
另外一种紧凑的表示方法使用 as_eq
参数:
as_eq=hello+world
当然,
as_q
、
as_oq
、
as_epq
、
as_eq
等可以像往常一样(即使用
&
字符)组合在一个独特的搜索查询中。因此,例如我可以搜索单词“hello”和“word”,加上“programming”和“code”之间的一个单词,如下所示:
q=hello+world&as_oq=programming+code
可以按以下方式搜索特定域名(再次,mydomain.com):
as_sitesearch=mydomain.com
然而,如果你想排除特定的域名(例如,因为它是垃圾邮件来源),你必须使用标准符号。例如:
q=hello+-site:mydomain.com
返回所有不在网站mydomain.com中的包含单词“hello”的页面。
要获取特定文件类型,例如pdf,您可以使用as_filetype
:
as_filetype=pdf
更复杂的搜索参数可以使用,如
Google支持文档中提供的。
例如,要获取具有单词同义词的结果,只需在单词前面使用
〜
运算符,例如:
q=~hello
此外,如果您想使用通配符,例如获取所有以“hello”开头并以“world”结尾的确切短语,您应该使用
*
运算符:
q="hello+*+world"
这可能会返回类似于“hello to the world”和“hello sweet world”的内容。
您还可以使用以下关键字(阅读此处以获取更多详细信息)在页面标题或页面网址中搜索特定单词:
- intitle
- allintitle
- inurl
- allinurl
例如,以下内容将返回所有包含单词“hello”和“world”的网址页面:
q=allinurl:hello+world
对于Google GUI页面的语言(不是结果页面),需要将语言字符串(例如英语为en
,法语为fr
,意大利语为it
等)插入到查询字符串中的hl
参数中。换句话说,如果使用英文版的Google进行搜索,则查询字符串变为如下形式:
http://www.google.com/search?hl=en&q=hello+world+site:mywebsite.com
要选择特定的语言,例如意大利语,请使用
lr
查询参数:
lr=lang_it
使用cr
参数,可以选择特定地理区域发布的页面。例如,要查找在意大利发布的所有页面:
cr=countryIT