我正在学习使用Python进行Web编程,我正在进行的练习之一是:我正在编写一个Python程序来查询网站“orbitz.com”并返回最低票价。出发和到达城市和日期用于构建URL。
我使用urlopen命令执行此操作,如下所示:
(search_str包含网址)
from lxml.html import parse
from urllib2 import urlopen
parsed = parse(urlopen(search_str))
doc = parsed.getroot()
links = doc.findall('.//a')
the_link = (links[j].text_content()).strip()
我们的想法是从查询结果中检索所有链接,并搜索“Delta”,“United”等字符串,然后读取链接旁边的美元金额。
它成功运作到今天 - 看起来orbitz.com已经改变了他们的输出页面。现在,当您在orbitz.com网站上输入旅行详细信息时,会出现一个显示轮子的页面,上面写着“查找行程”或类似的内容。这只是一个填充页面,不包含任何实际信息。几秒钟后,将显示实际结果页面。不幸的是,Python代码每次都会返回填充页面的链接,而我从未获得真实的结果。
我该如何解决这个问题?我是网络编程的初学者,所以非常感谢任何帮助。
答案 0 :(得分:0)
这种东西在爬虫世界中是正常的。
你需要做的是弄清楚它在“行程页面”之后重定向到哪个网址并直接从你的脚本中找到该网址。
然后确定他们是否也更改了最终搜索结果页面,如果是这样,请修改您的脚本以适应这些更改。