广告
返回顶部
首页 > 资讯 > 后端开发 > Python >bs4--mechanize模拟浏览器
  • 130
分享到

bs4--mechanize模拟浏览器

浏览器mechanize 2023-01-30 22:01:28 130人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

Mechanize模块,只支持python2,而我的环境是python3使用pycharm创建虚拟环境,使用py2.7如果非要使用py3,可以使用mechanicalsoup模块(网上大概看了下,都说不好用,这里不多介绍)Mechanize

Mechanize模块,只支持python2,而我的环境是python3

使用pycharm创建虚拟环境,使用py2.7

如果非要使用py3,可以使用mechanicalsoup模块(网上大概看了下,都说不好用,这里不多介绍)

blob.png


Mechanize安装

这里使用pycharm安装,点击Settings配置文件,找到Project Interpreter

blob.png


点击后边的+号,如图

blob.png


搜索mechanize包

blob.png


点击Install Package安装

blob.png


安装成功后,可看见mechanize包版本信息

blob.png


Mechanize常用函数

.CookieJar():设置cookie 

.Browser():打开浏览器 

.addheaders():User-Agent,用来欺骗服务器的 

.open():打开网页,按照官网描述可以打开任意网页,不仅限于http 

.select_form():选择表单的,选择表单的ID的时候需要注意。 

.form[]:填写信息 

.submit():提交


Mechanize测试

百闻不如一见,说得再多也不如直接测试一次

下面演示如何使用Mechanize模拟浏览器,搜索关键字

创建一个my_mechanize.py文件

import mechanize
import sys
from bs4 import BeautifulSoup

# py2.7声明使用utf-8编码
reload(sys)
sys.setdefaultencoding('utf-8')

# 打开浏览器
br = mechanize.Browser()

# 设置浏览器
br.set_handle_equiv(True)
br.set_handle_redirect(True)
br.set_handle_referer(True)
br.set_handle_robots(False)
br.set_handle_gzip(False)

# Follows refresh 0 but not hangs on refresh > 0
br.set_handle_refresh(mechanize._Http.HTTPRefreshProcessor(), max_time=1)

# 添加请求头
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]

# 上面的代码主要用于初始化设置

# 打开百度
br.open('https://www.baidu.com')
# 获取百度的表单
for fORM in br.forms():
    print(form)

# 搜索关键字
br.select_form(name='f')
br.form['wd'] = 'www.py3study.com'
br.submit()

# 查看搜索结果
print(br.response().read())

# 查看返回页面的所有链接
for link in br.links():
    print("%s : %s" % (link.url, link.text))

# 使用mechanize浏览器打开指定链接,执行命令
newlink = br.click_link(text='python3学习')
new_content = br.open(newlink)
html = new_content.read()

# 使用bs4过滤器
soup = BeautifulSoup(html, 'lxml')

# 获取所有标题,返回一个列表
tagsli = soup.find_all('div', attrs={'class': 'desc'})
for i in tagsli:
    print(i)

运行结果

blob.png

--结束END--

本文标题: bs4--mechanize模拟浏览器

本文链接: https://www.lsjlt.com/news/179159.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • bs4--mechanize模拟浏览器
    Mechanize模块,只支持python2,而我的环境是python3使用pycharm创建虚拟环境,使用py2.7如果非要使用py3,可以使用mechanicalsoup模块(网上大概看了下,都说不好用,这里不多介绍)Mechanize...
    99+
    2023-01-30
    浏览器 mechanize
  • bs4+mechanize模拟登陆
    Mechanize常用函数.CookieJar():设置cookie .Browser():打开浏览器 .addheaders():User-Agent,用来欺骗服务器的 .open():打开网页,按照官网描述...
    99+
    2023-01-30
    mechanize
  • selenium模拟浏览器&PhantomJS
    注意:最新版本的selenium停止对PhantomJS的支持(可以使用谷歌&火狐的无头浏览器),如果还想用PhantomJS,需要对selenium降级卸载最新版本:pip3 uninstall selenium安装老版本:pip...
    99+
    2023-01-30
    浏览器 selenium PhantomJS
  • python模拟打开Google浏览器并
    写这个博客的原因就是因为之前都是传参爬虫,还好自己会点网页,爬了一段时间觉得心好累,每次都要去自己找URL,找规律,传headers。 然后就想着能...
    99+
    2023-01-31
    浏览器 python Google
  • 使用python模拟浏览器实现登陆
    前言 你有没有想过,当我们在某个网站上登陆时,网站是如何通过验证的,我们都提交给了网站哪些信息,浏览器都发起了哪些请求? 下图是某个网站的登陆界面,接下来就让我们通过命令行模拟浏览器实现登陆操作,看看一个简单的登陆操作,具...
    99+
    2023-01-31
    浏览器 python
  • 怎么用python chrome Selenium模拟手机浏览器
    这篇文章主要讲解了“怎么用python chrome Selenium模拟手机浏览器”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用python chrome Selenium模拟手机浏...
    99+
    2023-06-02
  • 在java web项目中使用 HttpClient模拟浏览器
    这期内容当中小编将会给大家带来有关在java web项目中使用 HttpClient模拟浏览器,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。HttpClient模拟浏览器登录后发起请求浏览器实现这个效果需...
    99+
    2023-05-31
    java httpclient ava
  • python selenium 模拟浏览器自动操作抢购脚本
    每逢秒杀,都在遗憾网速和手速慢没能抢购到商品吧。 手写一个脚本,让程序帮你抢,抢到的概率会大大提升。 废话不多说,直接上代码。 本实例以华为官网抢购手机为例 """(1) 安装 chromedriver a. 去官网 (http://chr...
    99+
    2023-09-13
    python selenium 开发语言
  • Python项目实战:控制浏览器模拟登陆CSDN
    前言大家或许了解过模拟登陆CSDN,但是你知道有那几种方式模拟登陆的吗,Cookie,表单请求,Selenium 自动登录,这三个都是常用的模拟登陆方式,今天大家介绍的就是Selenium 自动登录,看过你就会觉得这非常的简单导入基本库...
    99+
    2023-06-02
  • win7系统中浏览器如何切换到手机浏览器模式
    win7系统中浏览器如何切换到手机浏览器模式,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。方法一 、设置启动参数型通过在谷歌浏览器启动参数中加入  --...
    99+
    2023-06-05
  • 详解JS浏览器事件模型
    目录什么是事件一个简单的例子如何绑定事件框架中的事件事件对象事件传播事件代理总结什么是事件 我想你很可能听说过事件驱动, 但是事件驱动到底是什么?为什么说浏览器是事件驱动的呢? 事件...
    99+
    2022-11-12
  • windows如何切换360浏览器模式
    这篇文章主要介绍“windows如何切换360浏览器模式”,在日常操作中,相信很多人在windows如何切换360浏览器模式问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”windows如何切换360浏览器模式...
    99+
    2023-07-01
  • python使用selenium模拟浏览器进入好友QQ空间留言功能
    首先下载selenium模块,pip install selenium,下载一个浏览器驱动程序(我这里使用谷歌)。 #导入 #注意python各版本find_element()方法的...
    99+
    2022-11-10
  • 浏览器无痕浏览还能查到记录吗,如何开启无痕模式
    一些朋友对浏览器的无痕浏览比较好奇,是不是用这个无痕模式浏览网站,就能瞒天过海了?使用浏览器的无痕浏览还能查到记录吗?今天针对这些问题我们来聊一聊,如何开启无痕模式,浏览器无痕模式是否真的“无痕”?   什么是无痕浏览? 浏览器无痕浏览指...
    99+
    2023-09-10
    服务器 前端 html
  • web前端浏览器对象模型章节
    浏览器对象模型( browser object model )  什么是BOM    提起BOM就不得不提起JavaScript的构成。ECMAScript为JavaScript的核心,但是要是在浏览器中使用JavaScript,那么BOM...
    99+
    2023-06-05
  • microsoft浏览器如何设置兼容模式
    今天小编给大家分享一下microsoft浏览器如何设置兼容模式的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。microsof...
    99+
    2023-07-02
  • win7浏览器兼容模式怎么设置
    这篇文章主要介绍“win7浏览器兼容模式怎么设置”,在日常操作中,相信很多人在win7浏览器兼容模式怎么设置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”win7浏览器兼容模式怎么设置”的疑惑有所帮助!接下来...
    99+
    2023-06-28
  • edge浏览器怎么切换兼容模式
    edge浏览器切换兼容模式的方法:1、使用F12开发者工具;2、使用地址栏命令;3、使用组策略。Edge浏览器是微软推出的一款现代化的Web浏览器,它拥有很多强大的功能和优化,为用户提供了更好的浏览体验。然而,有时候在访问一些旧的或不兼容的...
    99+
    2023-07-26
  • windows浏览器夜间模式如何开启
    这篇文章主要讲解了“windows浏览器夜间模式如何开启”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“windows浏览器夜间模式如何开启”吧!浏览器夜间模式开启方法:首先,不同浏览器的夜间...
    99+
    2023-07-02
  • 在浏览器中怎么实现训练模型
    这篇“在浏览器中怎么实现训练模型”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“在浏览器中怎么实现训练模型”文章吧。识别鸢尾花...
    99+
    2023-07-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作