2014-09-24 96 views
-2

我需要获取谷歌建议的字符串,当你开始输入搜索查询下拉的形式并且还得到建议搜索查询在SERP的底部获取搜索查询来自搜索框和谷歌SERP底部的建议

有没有什么办法可以用app Engine做到这一点。

我只对这些建议感兴趣,我不想从网页上抓取其他东西。

我宁愿把它保存在元组中。

请帮忙。

回答

1

我会放弃这一点。

首先,您需要找到一种方法来查询搜索界面本身(SERP)。我们会打电话给您run_search您可能无法使用App Engine来运行该代码,而不是很长时间。他们不太喜欢自动查询。

无论如何,像Mechanize这样的东西会帮助你。您需要大量的IP来运行它,因为您很快会遇到“”很抱歉...但您的计算机或网络可能正在发送自动查询..“问题。所以你不能在应用程序引擎上运行它,真的,因为他们已经看到我怀疑有人来...

然后,一旦你已经设置了,你需要开始运行您的实际查询。

你需要像“every_word_in_your_chosen_language.txt”

这将有助于利用:SCOWL

然后做一个循环,如:

for word in language: 
     result = run_search(word) 
     output = (word, result) 

凡如上所述run_search。然后您可以根据要求在“输出”中输入所需的数据,元组

当然run_search将返回一个list(SERP返回多个建议,请记住?),因此您必须将该列表保存在元组中。但没关系。不要忘记添加代码,检查您是否刚收到“我们很抱歉...”消息,以便您可以续订您的IP!

当然,对于单个字母,数字甚至Mr Snowman☃也会返回建议,因此您需要将单词分解为前缀,从单个字母开始,直到找到的任何长度都会返回有用的结果。

for prefix in prefixes: 
     result = run_search(prefix) 
     output = (prefix, result) 

其中prefixes只是所选语言中所有前缀组合的列表。例如。

机管局 抗体 AC ... 阿勒 AAP 等。

python切片运算符将派上用场做这个列表。

我不知道你打算如何处理这些数据,一旦你有了它,但如果它不是谷歌的IP,我会感到惊讶。所以你以后可能还需要更多的随机程序员的建议!

+0

一个trie(https://en.wikipedia.org/wiki/Trie)将是一个合适的数据结构来加载单词列表。然后遍历它,停在每个节点,将产生一个所有单词和所有前缀的列表。 – 2014-09-26 11:21:15