Python ubuntu 11.04中的xvfb运行错误
我的任务是使用python中的headless webkit(PyQt4.QtWebkit)对google搜索结果进行爬网。 模块使用PyQt4对结果进行了抓取。我应该在AmazonEC2中执行此脚本。因此,我应该使用(ec2中没有x服务器) 同时,我的模块必须在循环中执行。因此,它在一些迭代中运行良好。在一些循环模块运行到之后,“xvfb运行:错误:xvfb无法启动” 它应该如何解决 这是我的循环:Python ubuntu 11.04中的xvfb运行错误,python,amazon-ec2,pyqt4,xvfb,Python,Amazon Ec2,Pyqt4,Xvfb,我的任务是使用python中的headless webkit(PyQt4.QtWebkit)对google搜索结果进行爬网。 模块使用PyQt4对结果进行了抓取。我应该在AmazonEC2中执行此脚本。因此,我应该使用(ec2中没有x服务器) 同时,我的模块必须在循环中执行。因此,它在一些迭代中运行良好。在一些循环模块运行到之后,“xvfb运行:错误:xvfb无法启动” 它应该如何解决 这是我的循环: for i in range(10): try: query_dict
for i in range(10):
try:
query_dict["start"] = i * 10
url = base_url + ue(query_dict)
flag = True
while flag:
parsed_dict = main(url)
time.sleep(8.4)
flag = False
except:
pass
主(url):
webpage_scraser将使用pyqt4获取所有html结果。
如何避免xvfb循环失败?您需要为xvfb运行添加-auto-servernum
参数。否则,它会尝试在同一显示器上生成Xvfb
(默认情况下:99
),如果您已经运行了一个,则会失败 像这样跑
xvfb-run --auto-servernum --server-num=1 python webpage_scrapper.py http://google.com
我使用的是amazon ec2服务器实例我很惊讶它能工作。。。您正在传递冲突的参数:--auto servernum
告诉用户一个自由显示,而“--server num=1”告诉用户使用显示1。。。。根据需要使用一个或另一个参数。
xvfb-run --auto-servernum --server-num=1 python webpage_scrapper.py http://google.com