引言
迫近毕业季,老铁们是不是在为收集问卷感到烦恼呀,今天我们就来用python大量填写一波虚假问卷吧。
update(20200410)
问卷星用上阿里云智能认证了,脚本处理不了。如果访问频率控制地好的话,问卷星还是有一定概率不出验证码的。(代码已经在gitee上面更新了)
案例简介
我刚刚使用模板在问卷星上面生成了一份非常简单的问卷,这份问卷包含了单选题、多选题和填空题三种题型,应该能够覆盖最常见的场景了。
思路介绍
使用requests
打开问卷页面,使用xpath
解析页面,获取到所有选项的值,使用random.choice
选出答案,最后构建一个POST
请求,向服务器发送数据完成问卷的填写。
代码实现
我已经将所有的源代码都放在了我的gitee仓库,感兴趣的老铁可以自行取阅,我只是在学习爬虫技术的时候记录一下笔记而已,切勿用于商业用途和学术不端。
关键点
- 发送
POST
请求时的formdata
里面不少字段都写在问卷页面当中的,需要使用正则表达式匹配出来; - 没有使用代理ip,所有的问卷都发送自同一个ip,很容易出现验证码,控制访问频率非常重要。
- 填空题的答案是从列表中随机选择的,实际使用时要修改一下源代码。
脚本效果
存在问题
阿里云的智能验证码有点牛逼,暂时处理不了。