python3批量删除豆瓣分组下的好友的实现代码

yipeiwu_com7年前Python基础

python3批量删除豆瓣分组下的好友的实现代码

"""
python3批量删除豆瓣分组下的好友
2016年6月7日 03:43:42 codegay

我两年前一时冲动在豆瓣关注了很多豆瓣的员工,好多,有四百个。
我现在一时冲动想取消关注...,写这么一个脚本可以用来加快删除的速度。

cookies还是直接从chrome读取出来用,
参考我之前刚写的代码 python3从chrome浏览器读取cookie,

"""

import os
import sqlite3
import re
import requests
from win32.win32crypt import CryptUnprotectData

def getcookiefromchrome(host='.oschina.net'):
  cookiepath=os.environ['LOCALAPPDATA']+r"\Google\Chrome\User Data\Default\Cookies"
  sql="select host_key,name,encrypted_value from cookies where host_key='%s'" % host
  with sqlite3.connect(cookiepath) as conn:
    cu=conn.cursor()    
    cookies={name:CryptUnprotectData(encrypted_value)[1].decode() for host_key,name,encrypted_value in cu.execute(sql).fetchall()}
    print(cookies)
    return cookies
#运行环境windows 2012 server python3.4 x64 pywin32 chrome 50 
#getcookiefromchrome()
#getcookiefromchrome('.baidu.com')

dbcookies=getcookiefromchrome('.douban.com')

txt=requests.get('https://www.douban.com/contacts/list?tag=1718',cookies=dbcookies).text
#print(txt)
userid=re.findall(r'id="u(\d+)"',txt)

ck=dbcookies['ck']
#ck的值在每次重新登录豆版后会变化。
#可以从网页中提取,不过我发现cookies也记录有了。直接提取出来就好了

head={'Content-Type':'application/x-www-form-urlencoded',}

for uid in userid:
  data="people=%s&ck=%s" % (uid,ck)
  #data='people=47362624&ck=jeGZ'
  print(data)
  rs=requests.post('https://www.douban.com/j/contact/removecontact',headers=head,cookies=dbcookies,data=data).text
  print(rs)

以上这篇python3批量删除豆瓣分组下的好友的实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python与Redis的连接教程

今天在写zabbix storm job监控脚本的时候用到了python的redis模块,之前也有用过,但是没有过多的了解,今天看了下相关的api和源码,看到有ConnectionPoo...

Ubuntu下使用python读取doc和docx文档的内容方法

读取docx文档 使用的包是python-docx 1. 安装python-docx包 sudo pip install python-docx 2. 使用python-docx...

python模拟登陆,用session维持回话的实例

python模拟登陆的几种方法 客户端向服务器发送请求,cookie则是表明我们身份的标志。而“访问登录后才能看到的页面”这一行为,恰恰需要客户端向服务器证明:“我是刚才登录过的那个客户...

Django框架下静态模板的继承操作示例

本文实例讲述了Django框架下静态模板的继承操作。分享给大家供大家参考,具体如下: 前言:第一篇博客,毕业校招在即,抽空把做过的项目都整理一下。 开发环境:python3.4,djan...

python操作日志的封装方法(两种方法)

前言 今天就简单的对日志做个封装,实际工作中直接拿去用吧 方法1 """ ------------------------------------ @Time : 2019/5/22...