python 中的 webdriver.PhantomJS 超时?
Timeout for webdriver.PhantomJS in python?
我只用selenium-python.
当我使用webdriver.Firefox()
时,我可以得到结果。
当我使用webdriver.PhantomJS()
时,无法返回结果(脚本挂了)。
谁能帮帮我?
browser = webdriver.PhantomJS(executable_path='./lib/phantomjs/phantomjs')
url = "http://aminer.org/search/jie%20tang"
browser.get(url)
我已经重现了这个问题,也看到挂起的 PhantomJS。我尝试了多种解决方法(包括加载 "https" url 禁用网络安全;尽量不要加载图像、增加脚本和页面加载超时、更新 phantomjs 等),但没有成功工作到现在。
这里有一种不涉及硒的替代方法 - 使用 AMiner API。
以下是使用 requests
获得相同搜索结果的方法:
import requests
url = 'http://storeland.ru/user/login'
api_url = 'https://api.aminer.org/api/search/people'
with requests.Session() as session:
session.get(url)
params = {
'query': 'jie+tang',
'size': '20',
'sort': 'relevance',
# 'offset': 20 # set offset for pagination
}
response = session.get(api_url, params=params)
for item in response.json()['result']:
print item['name']
打印(搜索结果的第一页):
Zhu Jie-Tang
Jie-Tang Zhao
...
Jie-Tang Wu
Tian Jietang
我只用selenium-python.
当我使用webdriver.Firefox()
时,我可以得到结果。
当我使用webdriver.PhantomJS()
时,无法返回结果(脚本挂了)。
谁能帮帮我?
browser = webdriver.PhantomJS(executable_path='./lib/phantomjs/phantomjs')
url = "http://aminer.org/search/jie%20tang"
browser.get(url)
我已经重现了这个问题,也看到挂起的 PhantomJS。我尝试了多种解决方法(包括加载 "https" url 禁用网络安全;尽量不要加载图像、增加脚本和页面加载超时、更新 phantomjs 等),但没有成功工作到现在。
这里有一种不涉及硒的替代方法 - 使用 AMiner API。
以下是使用 requests
获得相同搜索结果的方法:
import requests
url = 'http://storeland.ru/user/login'
api_url = 'https://api.aminer.org/api/search/people'
with requests.Session() as session:
session.get(url)
params = {
'query': 'jie+tang',
'size': '20',
'sort': 'relevance',
# 'offset': 20 # set offset for pagination
}
response = session.get(api_url, params=params)
for item in response.json()['result']:
print item['name']
打印(搜索结果的第一页):
Zhu Jie-Tang
Jie-Tang Zhao
...
Jie-Tang Wu
Tian Jietang