zoukankan      html  css  js  c++  java
  • python-利用豆瓣爬虫发个动态

    目前总的来说是失败了。原因可能是因为豆瓣验证码的问题,因为我看不到登录时候的界面,所以没法分析验证码的链接。(我用自己的浏览器登录都是默认不要验证码的,这就尴尬了),所以登录不上,后面的post也就没有意义了。把代码贴出来。

    # -*- coding: utf-8 -*-
    """
    Created on Sat Jan  6 14:45:40 2018
    
    @author: xglc
    """
    import requests
    import time
    
    session = requests.session() #创建request对象 
    
    def _login(iddata):
        url = 'https://www.douban.com/accounts/login'
        login_header = {
                'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',
                'Origin':'https://www.douban.com/accounts/login',
        }
        session.headers.update(login_header)
        session.post(url,data=iddata,headers=session.headers)
    #_login()
    #print(session.headers.items)
    
    def _saysth(say_data):
        url = 'https://www.douban.com/'
        add_headers = {'Cache-Control':'max-age=0',
                       'Content-Length':'20',
                       'Content-Type':'application/x-www-form-urlencoded'
                }
        session.headers.update(add_headers)
        session.post(url,data=say_data,headers=session.headers)
    
    if __name__ == '__main__':  
        iddata = {'form_mail':'账号',
                  'form_password':'密码',
                  'redir':'https://www.douban.com',
                  'login':'登录',
                  }
        _login(iddata)
        print ('_login')
    #    print (session.headers.items)
        for i in range(5):
            print(5-i)
            time.sleep(1)
        say_data = {'ck':'OJop',
                    'comment':'vict',
                    }
        _saysth(say_data)
        print('完成!')
        
    View Code

    也不打算继续扣了,因为用的是自己平时用的账号,post 太多豆瓣别把我给封了?如果继续扣的话,大概方向有两点

    • 找出豆瓣验证码的链接(我手动登录完全看不到验证码,这是我的常用电脑,所以无法分析)
    • 完善update一下headers的内容,那里还有一些需要修改的项。

    这几天淮南雪都开始化了,零下5度,made,空调还给我偶尔出冷风,需要赶紧上班去办公室温暖一下。

    手动分析豆瓣js查看:

    Python-关于豆瓣发布“说句话”,添加网页等的js行为分析

  • 相关阅读:
    十大排序
    算法11----判断是否为回文词(双端队列判断)
    算法10-----分糖果
    算法9-----输出全排列(递归)---移除K个数,剩下最小数。
    算法8-----罗马字转整数(分治法)
    Python数据结构2-----队列和堆
    Python数据结构1-----基本数据结构和collections系列
    Python笔记22-----高阶函数
    10、TV UI
    9、创建向后兼容的用
  • 原文地址:https://www.cnblogs.com/aubucuo/p/postdoubanmood.html
Copyright © 2011-2022 走看看