我想用R来填写以下(演示)表格:
https://docs.google.com/forms/d/1daaGo7XZaaGGPvTOconG8QZItqaLeIZmSpPPcgxTJvg/viewform
有关如何做到这一点的任何建议?
谢谢!
答案 0 :(得分:4)
概要
步骤1:使用标准R网页抓取技术从网页中抓取FORM元素,并找到要填写的所有表单小部件的name
属性。例如:
<input type="radio" name="entry.1945263135" value="Option 1" id="group_1945263135_1" class="ss-q-radio" aria-label="Option 1">
为您提供问题1中选项1单选按钮的名称。
第2步:通过抓取POST
元素的属性获取FORM
地址。
步骤3:使用RCurl:postForm
发送表单,构建.params
参数以将值映射到窗口小部件名称。请参阅RCurl docs。每个参数的确切值取决于小部件(复选框,广播,文本等),所以我不会在这里详细说明。
棘手的棘手问题是,您是否正在尝试为任何谷歌表单制作此通用,或者如果这是一次性的,您很乐意将name
属性编码到您的代码中。实际上,如果您只想让它适用于一个表单,您只需查看页面源代码并将所有名称和POST
地址硬编码到代码中,无需进行拼接。然后只需要为.params
构建postForm
,如果这就是问题,那么我建议你阅读文档,尝试一些事情,然后在失败时提出更具体的问题。