之前做题时遇到一道题可以用mechanize模块轻松的解决,于是找了这篇微博学习了一下么mechanize的一些简单用法:

mechanize是非常合适的模拟浏览器的模块,它的特点主要有:
1 http,https协议等。
2 简单的HTML表单填写。
3 浏览器历史记录和重载。
4 Referer的HTTP头的正确添加(可选)。
5 自动遵守robots.txt的。
6 自动处理HTTP-EQUIV和刷新。

所以你可以用mechanize来完成一些自动化浏览器想要做的事情,比如自动登录表单,自动填写表单等。

你可以使用easy_install mechanize或者 pip install mechanize来安装这个第三方模块

下面是简单实用例子:

#导入模块##
import mechanize
import cookielib
from BeautifulSoup import BeautifulSoup  br = mechanize.Browser()
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)##关联cookies  ###设置一些参数,因为是模拟客户端请求,所以要支持客户端的一些常用功能,比如gzip,referer等
br.set_handle_equiv(True)
br.set_handle_gzip(True)
br.set_handle_redirect(True)
br.set_handle_referer(True)
br.set_handle_robots(False)  br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)  ###这个是degbug##你可以看到他中间的执行过程,对你调试代码有帮助
br.set_debug_http(True)
#br.set_debug_redirects(True)
#br.set_debug_responses(True)  br.addheaders = [('User-agent', 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.11) Gecko/20100701 Firefox/3.5.11')]##模拟浏览器头
response = br.open('http://xxx..com/')##自己设定一个url  for f in br.forms():##有的页面有很多表单,你可以通过来查看
print f  br.select_form(nr=1)##选择表单1,  br.form['username'] = '用户账户'
br.form['password'] = '密码'  br.submit()##提交表单  print 'success login'

Python mechanize模块相关推荐

  1. Python实例教程Mechanize模块编写爬虫的要点解析

    Python使用Mechanize模块编写爬虫的要点解析 mechanize是对urllib2的部分功能的替换,能够更好的模拟浏览器行为,在web访问控制方面做得更全面.结合beautifulsoup ...

  2. Python使用Mechanize模块编写爬虫的要点解析

    这篇文章主要介绍了Python使用Mechanize模块编写爬虫的要点解析,作者还讲解了Mechanize程序占用内存过高问题的相关解决方法,需要的朋友可以参考下 mechanize是对urllib2 ...

  3. python模拟浏览器模块_在Python中使用mechanize模块模拟浏览器功能

    知道如何快速在命令行或者python脚本中实例化一个浏览器通常是非常有用的. 每次我需要做任何关于web的自动任务时,我都使用这段python代码去模拟一个浏览器. import mechanize ...

  4. Python Re 模块超全解读!详细

    内行必看!Python Re 模块超全解读! 2019.08.08 18:59:45字数 953阅读 121 re模块下的函数 compile(pattern):创建模式对象 > import ...

  5. python argparse模块_Python argparse模块应用实例解析

    这篇文章主要介绍了Python argparse模块应用实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 简介 argparse是python ...

  6. 关于使用python logging模块的几点总结

    关于使用python logging模块的几点总结 使用python的标准日志模块logging可以非常方便地记录日志.Python日志系统非常丰富.添加结构化或非结构化日志输出到python代码,写 ...

  7. python高级-模块(14)

    一.python中的模块 有过C语言编程经验的朋友都知道在C语言中如果要引用sqrt函数,必须用语句#include <math.h>引入math.h这个头文件,否则是无法正常进行调用的. ...

  8. 转载: Python os 模块的功能以及子函数介绍

    原文链接: python之os模块 - 程序生(Codey) - 博客园 https://www.cnblogs.com/cxscode/p/8085326.html 一.Python OS模块介绍 ...

  9. 简单介绍python process模块

    在python中大部分情况需要使用多进程,python提供了multiprocessing模块.multiprocessing模块的功能众多:支持子进程.通信和共享数据.执行不同形式的同步,提供了Pr ...

最新文章

  1. arcgis下的python编程-面向ArcGIS的Python脚本编程
  2. matlab提速技巧(自matlab帮助文件)
  3. GWT和HTML5 Canvas演示
  4. vm磁盘映射 不能启动_软网推荐:网盘变身本地磁盘
  5. 不懂Python装饰器?教程双手奉上!
  6. 安卓案例:利用帧动画动态显示时间
  7. python文件合法模式组合_以下选项中,不是Python文件二进制打开模式的合法组合是...
  8. 【Flink】Flink 使用代码如何主动触发 SavePoint
  9. BZOJ1101 洛谷3455:[POI2007]ZAP——题解
  10. 设计模式学习之---Adapter(适配器)模式
  11. Teraterm的Log设定
  12. FPGA——sdram控制器1
  13. 802.11 Beacon帧
  14. H264 数据帧头分析
  15. Wiki引擎mediawiki
  16. 阿里云ECS上CentOS关闭阿里云盾
  17. 烤仔TVのCCW | 智能合约间的四种调用(下)
  18. uni-app开发的微信小程序隐藏返回首页按钮
  19. 【分享】北京社保查询API
  20. CLI、CLR、CTS、CLS

热门文章

  1. CVPR2018 Best Paper:Taskonomy: 揭开任务迁移学习的秘密
  2. 电子护照OCR识别并支持读取功能
  3. I2C总线协议和控制器解析
  4. PHP实践之路(七)PHP函数
  5. 编写基于PHP的聊天室
  6. 数字上的错误后缀_域名创业方法之前后缀完美搭配
  7. SAP FICO产品成本组件分析表开发说明书(包括测试样例、程序代码仅作参考,不保证一定可以运行)
  8. SmartGit 过期
  9. 浙江大学公共管理硕士(MPA)的选修课都有哪些哪些内容?
  10. 在自己电脑上安装Haskell/Chocolatey/VSCode/Git (Windows)