繁体   English   中英

我如何从R中的此网站通过Web抓取信息?

[英]How can i web scrape information from this website in R?

该网站http://a810-bisweb.nyc.gov/bisweb/bispi00.jsp用于搜索nyc建筑物应用程序信息。 在“应用程序搜索”部分下,有“ BIS职位编号:”,因此我要提取的信息是在输入职位编号然后单击“执行”后从新页面提取的。

例如,从数据集https://data.cityofnewyork.us/Housing-Development/DOB-Job-Application-Filings/ic3t-wcy2中 ,我选择工作编号220286232,然后转到第一个网站,将其放入“ BIS职位编号:”,然后单击“执行”。 现在我得到一个新页面。 我想要的信息是“申请人记录信息”(包括申请人联系信息)。

我被困在这里。 如何提取每个职位编号下的这些申请人信息?

我对网页抓取非常陌生。 我了解了如何使用rvest从整个页面中提取信息,但是我不熟悉跨不同网站进行的网络抓取。

谢谢。

更新:我尝试使用Socrata API,但是我发现申请人的联系信息没有自己的API字段,如果该信息没有API字段(但是该页面上的其他信息都有字段),是否意味着我可以使用API​​来解决这个问题?

谢谢!

在该页面的右上角,单击“ API”选项卡。 一个新的模式对话框将弹出“通过SODA API访问此数据集”,复制链接,在本例中为https://data.cityofnewyork.us/resource/rvhx-8trz.json 这是一个直接以机器可读的JSON格式提供数据的URL。 但是一次只能获取1000条记录。

因此,也许添加适当的$offset参数。 请参阅Socrata文档 纽约市似乎将此软件用于其开放数据平台。

也许在您的R脚本中这样称呼他们:

https://data.cityofnewyork.us/resource/rvhx-8trz.json?$offset=0
https://data.cityofnewyork.us/resource/rvhx-8trz.json?$offset=500
https://data.cityofnewyork.us/resource/rvhx-8trz.json?$offset=1000
https://data.cityofnewyork.us/resource/rvhx-8trz.json?$offset=...

(未试过以获得更大的偏移量)

使用jsonlite将JSON转换为R数据帧。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM