1
前提
需要第三方包
httplib2
2
本脚本实现本站自动登录下载文件
import httplib2
import urllib
import os
from urllib import urlencode
# config
m_downurl = 'http://dl.iteye.com/topics/download/46527af3-941f-38f0-b0f3-9f74bf5ffa67'
m_host = "http://www.iteye.com/login"
m_username_value = "***********"
m_password_value = "***********"
m_authenticity_token = "*************"
# create http cache
h = httplib2.Http('.cache')
# open debug
httplib2.debuglevel = 1
# get login url
getheader = {"Accept":"text/html, application/xhtml+xml, */*",
"Accept-Language":"zh-CN",
"User-Agent":"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)",
"Accept-Encoding":"gzip, deflate",
"Host":"www.iteye.com",
"Connection": "Keep-Alive",
"cache-control":"no-cache"
}
response1, content1 = h.request(m_host, headers = getheader)
data = {'authenticity_token': m_authenticity_token, 'name' : m_username_value, 'password': m_password_value , 'button': '%E7%99%BB%E3%80%80%E5%BD%95'}
postheader = {"Accept":"text/html, application/xhtml+xml, */*",
"Referer": "http://www.iteye.com/login",
"Accept-Language":"zh-CN",
"User-Agent":"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)",
"Accept-Encoding":"gzip, deflate",
"Host":"www.iteye.com",
"Connection": "Keep-Alive",
"cache-control":"no-cache",
'Cookie': response1['set-cookie']
}
# authentication supports SSL | Http Basic
# h.add_credentials(m_username_value, m_password_value )
# login
response2, content2 = h.request(m_host, 'POST', urlencode(data), headers = postheader)
# download
downloadheader = {"Accept":"text/html, application/xhtml+xml, */*",
"Accept-Language":"zh-CN",
"User-Agent":"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)",
"Accept-Encoding":"gzip, deflate",
"Host":"dl.iteye.com",
"Connection": "Keep-Alive",
"cache-control":"no-cache",
"Cookie": response2['set-cookie'],
}
response3, content3 = h.request(m_downurl, headers = downloadheader)
# save
filename = response3["content-disposition"].split("=")[1].replace('"', "")
file = open(filename,'wb')
file.write(content3)
file.close()
- 大小: 45 Bytes
分享到:
相关推荐
本书从基础的知识开始,讲解Web开发的整个流程,展示如何使用Python做测试驱动开发。本书由三个部分组成。介绍了测试驱动开发和Django的基础知识。第二部分讨论了Web开发要素,探讨了Web开发过程中不可避免的问题,...
模拟登录一些知名的网站,为了方便爬取需要登录的网站
模拟登录可以帮助用户自动化完成很多操作,在不同场合下有不同的用处,无论是自动化一些日常的繁琐操作还是用于爬虫都是一项很实用的技能。本课程通过 Firefox 和 Python 来实现,环境要求如下: * Python 库:...
为了实现python模拟登录功能,做的一个非常简单的web项目
Python Webdriver 是一个流行的自动化测试框架,它可以模拟用户的操作来测试 Web 应用程序。本文将详细介绍 Python Webdriver 自动化测试实战的知识点。 测试模型 Python Webdriver 提供了两种测试模型:线性测试...
butterfly一个用python tornado实现的web终端模拟器,可以在浏览器实现终端模拟,各种颜色高亮都有,无须对终端的各种配置
本书从最基础的知识开始,讲解 Web 开发的整个流程,展示如何使用 Python 做测试驱动开发。 本书由三个部分组成。 第一部分介绍了测试驱动开发和 Django 的基础知识。 第二部分讨论了 Web开发要素,探讨了 Web 开发...
模拟登录各类网站,操作api完成各种不可描述的事情
Python 51商城项目是指使用Python编程语言开发的一个电子商务平台,旨在模拟真实的在线购物体验。以下是Python 51商城项目的一些主要功能和特点: 用户注册与登录:用户可以通过注册账号来创建自己的账户,并通过...
Python Web Scraping项目是一个综合性教程和实践项目,旨在帮助用户掌握使用Python进行网页数据抓取的技能。该项目涵盖了从基础到高级的Web Scraping技术,结合实际案例,详细讲解了如何使用各种工具和库进行网页...
【pythonWEB自动化-04课-鼠标键盘模拟操作】
用Python编写的简约 Instagram Scraper
Selenium 是 Thought Works 公司开収的一套基于 web 应用的自劢化测试工具,直接运行在浏览器中,模拟用户操作。它可以被用于单元测试、集成测试、回弻测试、系统测试、冒烟测试、验收测试,并且可以运行在各种...
python模拟黑客界面 使用pygame模块,安装pygame模块之后可直接启动。启动之后按空格键退出
利用python,可以实现填充网页表单,从而自动登录WEB门户。 (注意:以下内容只针对python3) 环境准备: (1)安装python (2)安装splinter,下载源码 python setup install #coding=utf-8 import time from ...
Python 的安装非常简单,只需要下载安装 Python 的解释器,然后安装 Selenium 库即可。 在搭建 Selenium 环境时,需要安装 Selenium 库和浏览器驱动程序,例如 ChromeDriver 或 FirefoxDriver。安装完成后,需要...
深入分析TDD流程,包括“单元测试/编写代码”循环...学习何时以及如何使用模拟对象,以及隔离测试和整合测试的优缺点; 在过渡服务器中测试和自动部署; 测试网站中集成的第三方插件; 使用持续集成环境自动运行测试。
其内容涵盖了Python的数据类型和结构、用matplotlib进行数据可视化、金融时间序列数据处理、高性能输入/输出操作、高性能的Python技术和库、金融学中需要的多种数学工具、随机数生成和随机过程模拟、Python统计学...
模拟登录之滑块验证码的破解,具体代码如下所示: # 图像处理标准库 from PIL import Image # web测试 from selenium import webdriver # 鼠标操作 from selenium.webdriver.common.action_chains import ...