我可以抓取这种网站吗?
Can I scrape this kind of website?
我现在正在学习 python,我想提高我在这方面的知识,尤其是抓取。我现在正在使用 Scrapy 并开始将它与 Splash 一起使用。我想抓取一个更具挑战性的网站——航空公司网站“https://www.airasia.com/en/home.page?cid=1”——我的一位网络开发人员朋友告诉我,抓取这种类型的网站是不可能的,因为没有常规的 json 或 xml 文件被返回用于要抓取的数据。他说只能使用 API 访问数据(他说了一些关于 RESTFUL API 的事情)我不相信他。为了不浪费我的时间,如果有人能确认它,我会很高兴,如果有人说它可以被刮掉,如果那个人能给我一些如何刮掉它的提示,我会更高兴,如果那个人可以出示样张..
非常感谢。
您有 2 个选择:使用他们的 API(如果他们使用一个)发出 http 请求并从他们的服务器获取数据和信息。
或者使用 python 抓取/网络测试框架,例如 scrapy 或 selenium,直接在 python 程序中抓取他们的网站。
在这个网站上,Scrapy 比 selenium 更难,因为很多内容是动态的,需要自定义代码才能触发。 Selenium 应该很容易使用。
几乎可以抓取任何网站,但有些网站比其他网站更棘手。
除了 Scrapy,我建议使用一个更好的替代方案,称为 Selenium,它恰好也有一个用于 python 的库。
长话短说:您将以驱动程序的形式启动 Web 浏览器并导航到您选择的页面并模拟用户交互,例如单击、在表单中输入数据和提交。您还将能够 运行 JavaScript 功能。
您可能还想对法律约束进行一些研究,以确保您的操作不违法。例如,参考 Ryanair Ltd v PR Aviation BV 的判例法(Case C-30/14 CJEU)。
我现在正在学习 python,我想提高我在这方面的知识,尤其是抓取。我现在正在使用 Scrapy 并开始将它与 Splash 一起使用。我想抓取一个更具挑战性的网站——航空公司网站“https://www.airasia.com/en/home.page?cid=1”——我的一位网络开发人员朋友告诉我,抓取这种类型的网站是不可能的,因为没有常规的 json 或 xml 文件被返回用于要抓取的数据。他说只能使用 API 访问数据(他说了一些关于 RESTFUL API 的事情)我不相信他。为了不浪费我的时间,如果有人能确认它,我会很高兴,如果有人说它可以被刮掉,如果那个人能给我一些如何刮掉它的提示,我会更高兴,如果那个人可以出示样张..
非常感谢。
您有 2 个选择:使用他们的 API(如果他们使用一个)发出 http 请求并从他们的服务器获取数据和信息。
或者使用 python 抓取/网络测试框架,例如 scrapy 或 selenium,直接在 python 程序中抓取他们的网站。
在这个网站上,Scrapy 比 selenium 更难,因为很多内容是动态的,需要自定义代码才能触发。 Selenium 应该很容易使用。
几乎可以抓取任何网站,但有些网站比其他网站更棘手。
除了 Scrapy,我建议使用一个更好的替代方案,称为 Selenium,它恰好也有一个用于 python 的库。
长话短说:您将以驱动程序的形式启动 Web 浏览器并导航到您选择的页面并模拟用户交互,例如单击、在表单中输入数据和提交。您还将能够 运行 JavaScript 功能。
您可能还想对法律约束进行一些研究,以确保您的操作不违法。例如,参考 Ryanair Ltd v PR Aviation BV 的判例法(Case C-30/14 CJEU)。