python写自动答题脚本_[Python] 写个问卷星答题的爬虫脚本,试了下基本通用,供参考学习...

分享

代码粘贴显示有问题,改了好几次,这次应该可以了

今天单位让答题,打开链接准备答题,提示:电脑上面答不了,还只能微信扫码答题,看了下网页的内容,是问卷星的答题卷;

题目和选项都在页面里面写好了,所以就简单写了个爬虫代码,用了beautifulsoup、requests,另外存储抓取内容用了mysql数据库;

题目的选项个数不一定统一,所以数据大家使用的时候,可以直接把抓取到的题目都放到一个字段里面存着,后面要用的时候,直接读出来,遍历就行;

再就是,这网站暂时没有防爬机制,所以直接while循环遍历那种随机题目的地址,就能刷出来整个题库的题目(稍微改改代码就能爬整个网站的题库了);

代码比较简单,简单分享,仅供学习~# -*- coding: utf-8 -*-

import time

import requests

import random

import schedule

from bs4 import BeautifulSoup

import pymysql

mysql_host = '127.0.0.1'

mysql_db = 'wenjuanxing'

mysql_user = 'root'

mysql_password = '123'

mysql_port = 3306

pages = []

def ua(refer_str):

user = [

"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",

"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Acoo Browser; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)",

"Mozilla/4.0 (compatible; MSIE 7.0; AOL 9.5; AOLBuild 4337.35; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",

"Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)",

"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Cent

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以帮助你编一个Python网页自动答题脚本。这个脚本可以用来自动化填网页上的答题表单。 为了编这个脚本,你需要使用Python的网络请求库(如requests)和HTML解析库(如BeautifulSoup)。你可以通过发送HTTP请求获取网页内容,并使用HTML解析库来提取问题和选项。然后,你可以使用一些技巧来自动选择正确的答案并提交表单。 以下是一个简单的示例脚本,用于演示网页自动答题基本思路: ```python import requests from bs4 import BeautifulSoup # 发送HTTP请求 response = requests.get('http://example.com/quiz') # 解析网页内容 soup = BeautifulSoup(response.text, 'html.parser') # 提取问题和选项 questions = soup.find_all('div', class_='question') answers = soup.find_all('ul', class_='options') # 答题逻辑 for question, answer in zip(questions, answers): # 在这里编答题逻辑,根据问题和选项选择正确答案 # 假设答案选项是使用input标签表示的,根据实际情况修改 options = answer.find_all('input') correct_option = None # 找到正确答案 for option in options: if option['value'] == 'correct': correct_option = option break # 假设直接选择第一个选项作为答案,根据实际情况修改 if correct_option: correct_option.checked = True # 提交表单 response = requests.post('http://example.com/submit', data={'answers': 'your_answers'}) # 处理提交结果 if response.status_code == 200: print('答题功') else: print('答题失败') # 相关问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值