通过python3实现投票功能代码实例


Posted in Python onSeptember 26, 2019

这篇文章主要介绍了通过python3实现投票功能代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

import urllib.request
# cd C:\Python36-32\Scripts
# pip install BeautifulSoup
from bs4 import BeautifulSoup


def vote(get_url, post_url, option):
  # 访问投票页面,拿到cookie
  resp = urllib.request.urlopen(get_url)
  cookie = resp.getheader('Set-Cookie')
  # print(cookie)

  # 读取response信息
  html = resp.read()
  # HTML解析器,拿到vote_option
  bs = BeautifulSoup(html, "html.parser")
  # 后台校验的动态验证码,随自己业务调整
  secret_key = bs.find('input', id='secret_key').get("value")
  # print(vote_option)

  # hearders部分,cookie等
  headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Firefox/52.0',
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
        'Cookie': cookie}

  # post提交的数据,第一个为选中的复选框选项(多个中间逗号分隔),第二个为动态码(后台校验)
  data_json = {'option': option, 'secret_key': secret_key}
  # string转为byte类型,因为客户端校验要求
  data = urllib.parse.urlencode(data_json).encode("utf-8")
  # post请求,提交投票数据
  req = urllib.request.Request(post_url, headers=headers, data=data)
  response = urllib.request.urlopen(req)
  # 查看返回结果,转码为中文
  print(bytes.decode(response.read()))
def deal():
  # get连接、post链接、选项 根据自己业务修改
  get_url = ""
  post_url = ""
  option = ""
  vote(get_url, post_url, option)
deal()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用urllib2模块获取gravatar头像实例
Dec 18 Python
python实现的登陆Discuz!论坛通用代码分享
Jul 11 Python
Python中给List添加元素的4种方法分享
Nov 28 Python
Python and、or以及and-or语法总结
Apr 14 Python
在Python下进行UDP网络编程的教程
Apr 29 Python
总结python实现父类调用两种方法的不同
Jan 15 Python
修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法
Jan 26 Python
Django开发中的日志输出的方法
Jul 02 Python
Python对象转换为json的方法步骤
Apr 25 Python
使用Python进行中文繁简转换的实现代码
Oct 18 Python
Django中ORM找出内容不为空的数据实例
May 20 Python
Python drop方法删除列之inplace参数实例
Jun 27 Python
Python编写打字训练小程序
Sep 26 #Python
Python 如何优雅的将数字转化为时间格式的方法
Sep 26 #Python
python3.7实现云之讯、聚合短信平台的短信发送功能
Sep 26 #Python
python 模拟创建seafile 目录操作示例
Sep 26 #Python
python RC4加密操作示例【测试可用】
Sep 26 #Python
python使用 __init__初始化操作简单示例
Sep 26 #Python
如何安装2019Pycharm最新版本(详细教程)
Sep 26 #Python
You might like
php+mysqli使用面向对象方式更新数据库实例
2015/01/29 PHP
PHP连接Nginx服务器并解析Nginx日志的方法
2015/08/16 PHP
CI框架中类的自动加载问题分析
2016/11/21 PHP
Centos 6.5下PHP 5.3安装ffmpeg扩展的步骤详解
2017/03/02 PHP
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(上:事件篇)
2010/03/24 Javascript
Jquery之美中不足小结
2011/02/16 Javascript
JavaScript中window、doucment、body的解释
2013/08/14 Javascript
js实现字符串的16进制编码不加密
2014/04/25 Javascript
JavaScript中使用arguments获得函数传参个数实例
2014/08/27 Javascript
iScroll中事件点击触发两次解决方案
2015/03/11 Javascript
属于你的jQuery提示框(Tip)插件
2016/01/20 Javascript
JavaScript 深层克隆对象详解及实例
2016/11/03 Javascript
JavaScript基于DOM操作实现简单的数学运算功能示例
2017/01/16 Javascript
详解vue-cli与webpack结合如何处理静态资源
2017/09/19 Javascript
css和js实现弹出登录居中界面完整代码
2017/11/26 Javascript
webpack源码之loader机制详解
2018/04/06 Javascript
Vue.js最佳实践(五招助你成为vuejs大师)
2018/05/04 Javascript
解决angularjs WdatePicker ng-model的问题
2018/09/13 Javascript
小程序云开发实现数据库异步操作同步化
2019/05/18 Javascript
vue 通过base64实现图片下载功能
2020/12/19 Vue.js
[03:03]2014DOTA2西雅图国际邀请赛 Alliance战队巡礼
2014/07/07 DOTA
对比Python中__getattr__和 __getattribute__获取属性的用法
2016/06/21 Python
python模块简介之有序字典(OrderedDict)
2016/12/01 Python
Python决策树分类算法学习
2017/12/22 Python
python opencv 图像尺寸变换方法
2018/04/02 Python
学习python可以干什么
2019/02/26 Python
Python常用数据分析模块原理解析
2020/07/20 Python
css和css3弹性盒模型实现元素宽度(高度)自适应
2019/05/15 HTML / CSS
Canvas实现放大镜效果完整案例分析(附代码)
2020/11/26 HTML / CSS
全球酒店预订网站:Hotels.com
2016/08/10 全球购物
美国踏板车和轻便摩托车销售网站:Mega Motor Madness
2020/02/26 全球购物
大学国际贸易专业自荐信
2014/06/05 职场文书
售后服务质量承诺书
2015/04/29 职场文书
消防宣传语大全
2015/07/13 职场文书
实验室安全管理制度
2015/08/05 职场文书
Spring中bean集合注入的方法详解
2022/07/07 Java/Android