我仔细Pratik Chowdhury和Robbie Vercammen检查答案。他们提供了一个链接到Web文档的链接,该链接报告了Google搜索表单中可能使用的文本过滤列表。尽管这很有趣,但他们没有提供这个问题的答案。因此,我研究了很多问题,并找到了以下解决方案。
假设您需要对Google搜索进行HTTP调用(例如,通过CRON运行的PHP类,每月一次),以检索特定字符串查询的搜索结果,例如,在您的网站(即mywebsite。)中的所有网页都带有一些字词(即“hello”和“world”)。COM),那么你可以做一个HTTP GET调用到以下地址:
http://www.google.com/search?q=hello+world+site:mywebsite.com
的q
参数可以包含整个搜索查询,谷歌却定义的参数假证明名单。
请注意,AND
运算符可以用as_q
参数代替。而一个更紧凑的表示采用as_oq
q=hello+OR+world
:
要获得页面的结果与之间的“你好”和“世界”(即和OR)之一,必须改变查询‘q’参数来作为参数:
as_oq=hello+world
如果寻找确切的短语 “世界你好”,该q
参数为:
q="hello+world"
同时,再次,另一个紧凑表示使用as_epq
参数:
as_epq=hello+world
如果一个查找所有不包含单词“你好”和“世界”的成果,q
参数为:
q=-hello+-world
同时,再次,另一紧凑的表示使用as_eq
参数:
as_eq=hello+world
当然,as_q
,as_oq
,as_epq
,as_eq
等可以通过像通常一样组合在唯一的搜索查询中(即,通过使用&
字符)。因此,例如我可以搜索两个词“你好”和“字”加“规划”之间的一个“码”为遵循这里:
q=hello+world&as_oq=programming+code
人们可以搜索特定的域(再次,MYDOMAIN .COM)如下:
as_sitesearch=mydomain.com
但是,如果要排除特定的域(例如,因为它是一个垃圾邮件源),您必须对复发的标准符号。例如: -
q=hello+-site:mydomain.com
回报所有不在现场mydomain.com的用字的页面“你好”。
要获得特定的文件类型,例如一个pdf,你可以使用as_filetype
:
as_filetype=pdf
更复杂的搜索参数可以使用,如Google support docs提供。例如,要获得带有单词同义词的结果,只需在单词前面使用~
算子,例如,
q=~hello
此外,如果你想使用通配符,例如让所有以“你好”开始,以“世界”结束确切的短语,你应该使用*
操作:
q="hello+*+world"
这可能会返回类似:“你好世界”和“你好甜世界”。
你也可以搜索特定的词里面的页面标题或使用以下关键字的页面URL(读here有详细介绍):
- INTITLE
- allintitle
- inurl这样
- allinurl
例如,下面返回所有页面sa这两个词“你好”和“世界”是在URL:
q=allinurl:hello+world
对于谷歌GUI页面(不结果的一个),必须插入到查询字符串的语言字符串的语言(例如英语的en
,法语的fr
,意大利语的it
等)到hl
参数。换句话说,如果一个搜索与英文版本的谷歌,查询字符串变成如下:
http://www.google.com/search?hl=en&q=hello+world+site:mywebsite.com
要选择一个特定的语言,例如意大利,用lr
查询参数:
lr=lang_it
人们也可以通过使用cr
参数公布在一个特定的地理区域选择页面。例如,要查找在意大利出版的所有页面:
cr=countryIT
我希望大家都知道,没有使用Web表单和刮结果网页违反了谷歌使用条款。 – Filburt 2013-04-06 15:01:18
@Filburt谢谢!你记住了我!但是,我的问题涉及如何制作一些东西,不知道这是否违反了Google的条款!我正在测试一个原型。谷歌已经能够为我辩护:) – JeanValjean 2013-04-06 15:06:18