4
我想用python3和BeautifulSoup从http://flight.qunar.com/中刮取机票信息(包括飞机信息和价格信息等)。下面是我使用的Python代码。在此代码中,我试图在2012-07-25从北京(北京)到丽江(丽江)的航班信息。如何在页面完成加载所有搜索结果后使用python urlopen scraping?
import urllib.parse
import urllib.request
from bs4 import BeautifulSoup
url = 'http://flight.qunar.com/site/oneway_list.htm'
values = {'searchDepartureAirport':'北京', 'searchArrivalAirport':'丽江', 'searchDepartureTime':'2012-07-25'}
encoded_param = urllib.parse.urlencode(values)
full_url = url + '?' + encoded_param
response = urllib.request.urlopen(full_url)
soup = BeautifulSoup(response)
print(soup.prettify())
我得到的是提交请求后的初始页面,页面仍在加载搜索结果。我想要的是加载搜索结果后的最后一页。那么我怎么才能用python实现这个目标呢?
PyQt的似乎是我的问题一个很好的候选人。我会仔细看看的。谢谢,曼纽尔。还有一个问题:PyQt是免费的吗? – 2012-07-26 05:55:17
是的,它是!在Linux上,只需执行'sudo apt-get install python-qt4 libqt4-webkit' - 在Mac和Windows上,您必须手动下载它们(尽管我认为您必须注册才能下载Qt) – 2012-07-26 12:47:06
我试过PyQt。但我仍然得到了与urlopen相同的结果,这不是我想要的结果。 – 2012-08-13 05:18:41