作为我研究的一部分,我试图获取大量学术文章的信息.文章数量大约为数千.由于谷歌学术搜索没有API,我试图抓住/爬行学者.现在我现在,这在技术上是针对EULA的,但我试图对此非常礼貌和合理.我了解Google不允许机器人将流量控制在合理范围内.我开始测试一批约500个请求,每个请求之间有1个.关于前100个请求后我被阻止了.我尝试了多种其他策略,包括:
我怀疑,在这一点上,我的剧本正在增加任何人类所需的大量流量.但是,在约100-200个请求之后,我总是被阻止.有没有人知道一个很好的策略来克服这个问题(我不关心它是否需要数周,只要它是自动化的).此外,是否有人直接与谷歌签约并要求获得类似的事情(研究等)?是否值得尝试编写它们并解释我正在尝试做什么以及如何做,并看看我是否可以获得我的项目的许可?我将如何与他们联系?谢谢!
我正在尝试在我的 python (2.7) 脚本中设置与 Selenium 的 chrome 会话,如下所示:
from selenium import webdriver
driver=webdriver.Chrome()
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
Traceback (most recent call last):
File "soup_test.py", line 30, in <module>
driver=webdriver.Chrome()
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/chrome/webdriver.py", line 61, in __init__
self.service.start()
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/common/service.py", line 62, in start
stdout=self.log_file, stderr=self.log_file)
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1335, in _execute_child
raise child_exception
OSError: [Errno 8] Exec format error
Run Code Online (Sandbox Code Playgroud)
通过其他问题搜索,一个常见问题似乎是 chromedriver 不在路径上,但我检查过,它是。我什至尝试明确指定路径:
driver=webdriver.Chrome("/path/to/chromedriver")
Run Code Online (Sandbox Code Playgroud)
得到相同的结果。有人知道可能是什么问题吗?我真的很感激你的帮助!