(1)mechanize
gem install mechanize
(2)模拟浏览器行为
require "mechanize"
agent = Mechanize.new
agent.user_agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"
# 获得一个page对象
page = agent.get("http:/xxxxxxx/")
form = page.forms[0]
username_field = form.field_with(:name="username")
username_field.value = "xxxxx"
password_field = form.field_with(:name=>"password")
password_field.value = "xxxxxxx"
#提交表单返回一个page
step2_page = agent.submit form
上面就能模拟登录
爬取登录网站的信息
(1)登录之后操作相关页面 current_page等等
(2)保存cookie到一个文件然后直接get登录后才能看到的页面
保存填充登录信息后的cookie,可以save,这样永久保存,以后就可以不用登录了
tmp_cookie1 = agent.cookie_jar
#访问一个新的地址即需要登录的地址之前需要把相应的cookie加载进去
agent.cookie_jar = tmp_cookie1
对于需要验证码的自己没用mechanize做过,用casperjs做过,应该可以自己直接浏览器登录获得他们的cookie然后像第二步一样的方式。也可以登录时获取
解析css使用nokogori
分享到:
相关推荐
### Python爬取天气数据并制图分析 ...通过以上设计思路和技术方案,可以有效地完成2018年全年北上广深空气质量数据的爬取与分析任务,同时利用Python绘图库实现数据可视化,为用户提供直观的城市空气质量对比信息。
3. **动态网站爬取**:对于使用JavaScript动态加载内容的网站,可以使用Selenium库,它允许模拟浏览器行为,包括点击、滚动等,从而获取动态加载的数据。通过抓包工具(如Fiddler、Wireshark)分析真实请求,也可以...
`mechanize`库是一个模拟浏览器行为的库,它可以帮助开发者编写自动化脚本,用于浏览网页、填写表单、点击链接等任务,非常适合进行网页抓取和数据提取。在这个"multi-mechanize-master"项目中,重点是将`mechanize`...
这在数据爬取、自动化测试和模拟用户行为的场景中尤为有用。 在源代码中,我们可以看到mechanize的核心类和方法。其中,`Browser`类是mechanize的核心,它模拟了浏览器的行为。`Browser`类提供了如`open()`方法用于...
8. 可能的反爬策略:网站可能会设置验证码、IP限制等反爬机制,这时可能需要用到`selenium`、`mechanize`等工具模拟浏览器行为,或者更换IP、使用代理。 在实际操作中,我们还需要了解Python的模块化编程,将上述...
Mechanize模拟浏览器行为,提供了更直观的API来操作表单、跟踪cookie和导航链接。在Python中,可以创建一个`Browser`对象,然后使用它来填充表单、提交表单和浏览网页: ```python from mechanize import Browser ...
4. **示例**:一些示例脚本,演示了如何使用 Mechanize 进行基本的 Web 交互,如登录网站、爬取数据等。 5. **依赖**:项目可能会列出其依赖的 Common Lisp 包或库,如 ASDF(Advanced System Definition Facility...
2. Mechanize:Mechanize库是专门针对网站交互设计的,它可以模拟浏览器行为,比如点击按钮、填写表单和处理cookies。这对于那些需要登录或执行特定用户操作的网站来说非常有用。Mechanize库还支持自动处理重定向和...
7. **Mechanize**:类似于Selenium,Mechanize模拟浏览器行为,用于处理表单、点击链接等任务,但它的功能相对简单,适合轻量级的交互需求。 8. **Pandas**:Pandas库用于数据处理和分析,爬取的数据通常需要清洗和...
这个爬虫程序是用Python编写的,它结合了数据库操作,这使得它可以有效地存储和管理爬取的数据。在爬虫领域,这样的设计非常实用,因为它允许对大量数据进行持久化存储和后期分析。下面我们将详细讨论其中涉及的关键...
7. **Mechanize**:另一个模拟浏览器行为的库,它提供了模拟用户交互的功能,如填写表单、点击链接等,适用于自动化登录和导航。 8. **Tor**:如果需要匿名爬取网页,可以使用Tor网络,它能隐藏用户的IP地址,增加...
2. 模拟浏览器行为:Python有许多第三方库如Requests和mechanize,可以帮助模拟User-Agent、处理session和cookie,以应对那些对爬虫有防护机制的网站。 四、后续学习内容 后续将会分享关于BeautifulSoup的安装和...
7. Mechanize:Mechanize模拟浏览器行为,可以处理表单提交、点击链接等任务,甚至支持JavaScript。然而,由于文档不足,使用起来可能较为困难。 8. Selenium:Selenium是一个强大的自动化测试工具,但它也可以用于...
9. **Mechanize**: 另一个模拟浏览器行为的库,它可以模拟用户交互,如点击按钮、填写表单等,适用于需要登录或交互的网站爬取。 10. **ProxyPool**: 如果需要避免IP被封,可以使用代理IP。ProxyPool是用于管理和...
它支持XPath和CSS选择器来提取数据,并且可以通过设置不同的策略来处理反爬虫机制,如模拟登录、延迟请求等。然而,对于JavaScript渲染的内容,Scrapy原生支持有限,可能需要配合其他工具如Selenium来处理。 2. ...
爬取的数据通常需要存储,可以使用`pandas`库进行数据清洗和分析,再通过`csv`、`json`或数据库(如SQLite、MySQL)进行持久化存储。 通过掌握以上技巧,开发者可以在Python爬虫项目中更高效地抓取、处理和存储...
- **登录操作**:利用 `requests` 或者更高级的工具如 `mechanize` 来自动化登录过程。 #### 二、网页抓取后的处理 抓取到的网页通常包含大量的 HTML 标签,这些标签需要被过滤或提取,以便于后续的数据分析。...
3. Mechanize:另一个模拟浏览器的库,主要用于处理登录、表单提交等任务。 三、数据解析库 1. lxml:一个高效的XML和HTML解析库,支持XPath和CSS选择器。 2. PyPDF2:用于处理PDF文件的库,可以读取、合并、分割...
7. 数据持久化:可以将已爬取的图片URL和相关信息存储到数据库或文件中,以便后续使用。 四、注意事项 1. 遵守robots.txt:尊重网站的爬虫规则,不爬取禁止抓取的页面。 2. 设置延时:为了避免频繁请求导致服务器...