`
zoulc001
  • 浏览: 30481 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

python访问需要登录的网页

阅读更多

有些网页需要你登录之后才可以访问,你需要提供账户和密码。

只要在发送http请求时,带上含有正常登陆的cookie就可以了。

1.首先我们要先了解cookie的工作原理。

Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key/value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用cookie)。Cookie名称和值可以由服务器端开发自己定义,对于JSP而言也可以直接写入jsessionid,这样服务器可以知道该用户是否合法用户以及是否需要重新登录等。

2.之后我们要获取到用户正常登录的cookie.

python提供了cookieJar的库,只要把cookieJar的实例作为参数传到urllib2的一个opener里面。

然后访问一次登录的页面,cookie就已经保存下来了。之后通过这个实例访问所有的页面都带有正常登陆的cookie了。

以人人网为例子。

#encoding=utf-8
import urllib2
import urllib
import cookielib
def renrenBrower(url,user,password):
    #登陆页面,可以通过抓包工具分析获得,如fiddler,wireshark
    login_page = "http://www.renren.com/PLogin.do"
    try:
        #获得一个cookieJar实例
        cj = cookielib.CookieJar()
        #cookieJar作为参数,获得一个opener的实例
        opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
        #伪装成一个正常的浏览器,避免有些web服务器拒绝访问。
        opener.addheaders = [('User-agent','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)')]
        #生成Post数据,含有登陆用户名密码。
        data = urllib.urlencode({"email":user,"password":password})
        #以post的方法访问登陆页面,访问之后cookieJar会自定保存cookie
        opener.open(login_page,data)
        #以带cookie的方式访问页面
        op=opener.open(url)
        #读取页面源码
        data= op.read()
        return data
    except Exception,e:
        print str(e)
#访问某用户的个人主页,其实这已经实现了人人网的签到功能。
print renrenBrower("http://www.renren.com/home","用户名","密码")
 

 

 

 

分享到:
评论
1 楼 manxisuo 2015-06-05  
可以用,谢谢博主!

相关推荐

    Python-weixinlogin微信网页授权实现扫码登录

    本文将深入探讨如何使用Python来实现微信网页授权的扫码登录功能。这个过程涉及到的主要知识点包括OAuth2.0授权框架、微信开放平台API以及Python的请求库。 微信网页授权是微信提供的一种服务,允许第三方网站通过...

    python 调用IEHtmlWindow打印网页

    在Python编程中,有时我们需要与浏览器交互,例如自动化测试、数据抓取或模拟用户操作。在这样的场景下,调用浏览器的某些功能,比如打印网页,就显得尤为重要。本篇文章将详细讲解如何使用Python调用IEHtmlWindow来...

    python简单的登录界面

    运行`python app.py`,然后在浏览器中访问`http://localhost:5000/`,你应该能看到登录界面。 6. **扩展功能**:虽然上述示例是基础的登录界面,但在实际项目中,你可能需要连接数据库来验证用户身份,或者使用更...

    Python 访问http, https请求

    总的来说,Python通过`urllib`和`requests`库提供了强大的HTTP和HTTPS访问能力,使得开发者能够轻松地进行网页抓取、API调用等各种网络交互任务。同时,了解和掌握这些知识对于进行Web开发、数据爬取以及自动化测试...

    python 多线程实现多个网址的多次快速访问

    本教程将详细讲解如何使用Python的多线程来实现对多个网址的快速访问,并记录访问结果。 首先,我们需要导入Python的`threading`模块,它是Python标准库中的多线程支持库。`threading.Thread`是创建新线程的类,而`...

    python 实现登录网页的操作方法

    有些网页需要你登录之后才可以访问,你需要提供账户和密码。 只要在发送http请求时,带上含有正常登陆的cookie就可以了。 1、首先我们要先了解cookie的工作原理。 Cookie是由服务器端生成,发送给User-Agent(一般是...

    python 自动登录京东并定时抢购商品

    在本项目中,"python 自动登录京东并定时抢购商品"是一个利用Python编程语言实现的自动化脚本,主要用于帮助用户在京东平台上自动登录并执行抢购操作。这个程序的关键在于网页自动化技术,特别是Selenium库的应用。...

    Python3+PhantomJS登陆网站

    - "Phantom JS":这是关键的辅助工具,一个基于WebKit的无头浏览器,可以执行JavaScript,用于模拟用户操作,比如网页登录。 根据这些信息,我们可以详细讨论以下几个知识点: 1. **Python3**:Python是一种高级...

    python网络爬虫爬取整个网页

    5. **cookies与session**:有些网站需要登录才能访问,此时需要用到requests库的cookies和session功能。cookies用于存储用户登录状态,session则可以保持一次会话过程中的多次请求。 6. **爬虫框架Scrapy**:对于...

    Python-flask-微信网页授权实现扫码登录.zip

    在本文中,我们将深入探讨如何使用Python的Flask框架与微信网页授权接口集成,实现扫码登录功能。这个过程涉及到OAuth2.0授权协议、微信开放平台的API接口以及Flask框架的应用开发。以下是对实现这一功能所需关键...

    python 自动批量打开网页的示例

    对于需要频繁访问多个网址的场景(如市场调研、竞品分析等),使用Python脚本进行网页的批量打开可以极大地提升效率。下面,我们将详细探讨如何使用Python实现这一功能,并深入理解代码背后的逻辑和技术细节。 ####...

    Python-模拟登录一些知名的网站为了方便爬取需要登录的网站

    在Python编程领域,模拟登录是Web爬虫技术中不可或缺的一部分,尤其当我们需要抓取那些受保护的、需要用户登录后才能访问的网站内容时。本文将深入探讨如何使用Python进行模拟登录,以便能够爬取知名网站上的数据。 ...

    Edge浏览器驱动程序 python程序使用使用selenium打开浏览器访问网页

    Edge浏览器驱动程序是微软开发的一款用于自动化测试和网页交互的工具,它允许程序员,特别是Python开发者,通过Selenium库来控制Microsoft Edge浏览器。Selenium是一个强大的Web自动化框架,广泛应用于功能测试、...

    Python网页登录模板

    **Python网页登录模板详解** 在Python的Web开发领域,Django框架因其强大的功能和高效的开发效率而备受青睐。本教程将深入探讨一个基于Django的网页登录模板的实现,同时也会涉及Python的基础知识以及相关库的使用...

    python实现网络爬虫使用了第三方库beautifulsoup来解析网页文件,并且实现了cookie登录特定网站访问.zip

    在网络爬虫中,有时需要模拟用户登录以访问受限内容。cookie是服务器存储在客户端(浏览器)上的小数据块,用于保持会话状态。在Python中,我们可以使用`requests`库来管理cookie: 1. **设置cookie**:使用`...

    对python抓取需要登录网站数据的方法详解

    接下来,我们将详细介绍几种使用Python抓取需要登录的网站数据的方法。 首先,我们可以使用scrapy框架,它是Python开发的一个快速、高层次的屏幕抓取和网页爬取框架。为了登录网站,scrapy提供了一个FormRequest类...

    python 登录购票网站

    这样可以访问到需要登录后才能查看的页面,比如购票页面。 对于登录权限的处理,可能涉及到检查返回的响应状态码、错误信息,或者解析服务器返回的JSON数据,以确认登录是否成功。有时,网站会返回特定的错误代码或...

    python登录

    通过对HTTP请求包的分析以及利用Python的标准库,我们可以轻松地实现模拟登录功能,从而访问那些需要认证的网页内容。在实际应用中还需要注意各种细节问题,比如错误处理、异常情况等,以确保程序的稳定性和可靠性。

Global site tag (gtag.js) - Google Analytics