我已经做过网络抓取,但它从来没有这么复杂。我想从学校网站上获取课程信息。然而,所有的课程信息都显示在网络刮板的噩梦中。如何抓取网站内容(* COMPLEX * iframe,javascript提交)
首先,当你点击“Schedule of Classes”网址时,它会首先引导你浏览其他几个页面(我相信设置cookie和检查其他废话)。
然后,它终于加载了一个页面,该页面显然只在从机构的网页(如arizona.edu)加载时才喜欢加载。
从那里表单提交必须通过实际上没有重新加载页面的按钮,但只提交一个AJAX查询,我认为它只是操纵iframe。
这个查询对我来说很难复制。我一直使用PHP和curl模拟浏览器访问初始页面,收集适当的cookie等。但我认为我的curl函数发送的头文件有问题,因为它在初始“搜索表单”加载后从不让我执行任何类型的查询。
任何帮助将是真棒......
http://www.arizona.edu/students/registering-classes - >
或者只是在这里 “课程表”: http://schedule.arizona.edu/
网站刮气味。如果他们没有API来提供他们的数据,他们不想被刮掉 –
@ Col.Shrapnel那么我需要这些数据。我怀疑他们设置这个系统以避免被刮伤。这是他们实施管理整个学术界的一个更大系统的一部分。顾问们使用这个系统来批准学生上课等,我不是在试图阻止顾问刮蹭。这是他们选择使用的预制系统,这是我见过的最笨重的东西。 我计划开发一个应用程序来帮助学生,如果应用程序有任何动力,我会直接接近学校,并说嘿...给我API,所以我可以轻松地做到这一点。 – Rawr