题
我想编写一个程序,找到公共汽车站的时间并相应地更新我的个人网页。
如果我要手动执行此操作,我会
- 访问www.calgarytransit.com
- 输入一个停止号码。即)9510
- 点击按钮“下一班巴士” 醇>
结果可能如下所示:
10:16p Route 154
10:46p 154号公路
11:32p 154号公路
一旦我抓住时间和路线,我就会相应地更新我的网页。
我不知道从哪里开始。我知道他们对网络编程很沮丧,但可以编写一些C和Python。我可以研究哪些主题/库?
解决方案
Beautiful Soup 是一个专为解析而设计的Python库网页。在它和 urllib2 之间( urllib.request 3)你应该能够弄清楚你需要什么。
其他提示
您所询问的内容称为“网页抓取”。我敢肯定,如果你在谷歌周围找到一些东西,但核心概念是你要打开网站连接,在HTML中啜饮,解析它并识别你想要的块。
Python Wiki 上有很多内容。
由于您使用C语言编写,您可能需要查看 cURL ;特别是,看看libcurl。太棒了。
您可以使用适用于Python的机械化库 http://wwwsearch.sourceforge.net/mechanize /
您可以使用Perl来帮助您完成任务。
use strict;
use LWP;
my $browser = LWP::UserAgent->new;
my $responce = $browser->get("http://google.com");
print $responce->content;
您的responce对象可以告诉您它是否已经取消以及返回页面内容。您也可以使用同一个库发布到页面。
该网站不提供API,以便您能够获取所需的相应数据。在这种情况下,您需要解析返回的实际HTML页面,例如,CURL请求。
只要您尝试“刮”的网页布局不会经常更改,您就应该能够使用任何现代编程语言解析html。
不隶属于 StackOverflow