qq cookie

from selenium import webdriver
from selenium.webdriver import ActionChains
import time, re, os, requests
from PIL import Image

def get_cookie():
    print('开始')
    chrome_options = webdriver.ChromeOptions()
    # # 使用headless无界面浏览器模式
    chrome_options.add_argument('--headless')
    chrome_options.add_argument('--no-sandbox')
    # 谷歌文档提到需要加上这个属性来规避bug
    chrome_options.add_argument('--disable-gpu')
    # 设置默认编码为utf-8
    chrome_options.add_argument('lang=zh_CN.UTF-8')
    ## 隐藏滚动条, 应对一些特殊页面
    chrome_options.add_argument('--hide-scrollbars')
    # 禁止加载图片
    # chrome_options.add_argument('blink-settings=imagesEnabled=false')
    # 指定浏览器分辨率
    chrome_options.add_argument('window-size=1440x900')
    driver = webdriver.Chrome(chrome_options=chrome_options, executable_path='/root/yu/01-chromedriver/chromedriver')
    driver.get('https://www.wegame.com.cn/store/games')
    # driver.maximize_window()
    ac = driver.find_element_by_xpath('//*[@id="header_wrapper"]/div/div[3]/div[1]/a/span')
    ActionChains(driver).move_to_element(ac).click(ac).perform()
    time.sleep(1)
    iframe = driver.find_element_by_xpath('/html/body/div[4]/div/div/div[2]/div[3]/iframe')   # 切换到这个iframe  不切换获取不到xpath坐标
    driver.switch_to.frame(iframe)
    time.sleep(2)
    ac = driver.find_element_by_xpath('//*[@id="switcher_plogin"]')
    ActionChains(driver).move_to_element(ac).click(ac).perform()
    time.sleep(1)
    driver.find_element_by_xpath('//input[@id="u"]').clear()
    for i in '2649942575':
        # for i in '1064145110':
        driver.find_element_by_xpath('//input[@id="u"]').send_keys(i)
        time.sleep(0.2)
    driver.find_element_by_xpath('//input[@id="p"]').clear()
    for i in 'yu1064145110':
        # for i in 'zhangyan1216':
        driver.find_element_by_xpath('//input[@id="p"]').send_keys(i)
        time.sleep(0.2)
    ac = driver.find_element_by_xpath('//*[@id="login_button"]')
    ActionChains(driver).move_to_element(ac).click(ac).perform()
    time.sleep(2)
    print('-' * 100)
    html = driver.page_source
    if '安全验证' in html:
        imgelement = driver.find_element_by_xpath('//*[@id="qrlogin_img"]')
        locations = imgelement.location  # 获取当前位置坐标  定点
        print('locations:{}'.format(locations))
        sizes = imgelement.size   # 获取xpath取到的图片大小
        print('sizes:{}'.format(sizes))
        driver.switch_to.default_content()   # 切换到主页
        iframe_l = driver.find_element_by_xpath('/html/body/div[4]/div/div/div[2]/div[3]/iframe')
        locations_l = iframe_l.location
        print('locations_l:{}'.format(locations_l))
        rangle = (locations['x'] + locations_l['x'], locations['y'] + locations_l['y'],
                  locations['x'] + sizes['width'] + locations_l['x'],
                  locations['y'] + sizes['height'] + locations_l['y'])   # 要切图片的坐标(x, y, x, y) 第一个是 第一点坐标    后面xy 是第二点坐标   两点获取一个面
        path = os.path.dirname(os.path.abspath(__file__))
        driver.save_screenshot('{}/iamge.png'.format(path))   # 数据保存为图片
        # 打开截图切割
        img = Image.open('{}/iamge.png'.format(path))   # 读取要切割的图片
        jpg = img.crop(rangle)
        jpg.save('{}/iamges.png'.format(path))   # 保存切割下的图片
        jpgzoom = Image.open('{}/iamges.png'.format(path))
        (x, y) = jpgzoom.size
        x_s = x * 3
        y_s = y * 3
        out = jpgzoom.resize((x_s, y_s), Image.ANTIALIAS)
        out.save('{}/zoom.png'.format(path), quality=95)   # 保存放大后的图片
        # driver.quit()
        print('请快速扫码登入')
        time.sleep(20)
    print('-' * 1000)
    # driver.switch_to.default_content()
    time.sleep(2)
    aa_cookie = driver.get_cookies()   # 获取cookie
    print("aa_cookie:{}".format(aa_cookie))
    print('+' * 100)
    cookie = {}
    cookies = []  # 拼cookie
    for i in aa_cookie:
        cookie[i["name"]] = i["value"]
        cookies.append('{}={}'.format(i["name"], i["value"]))
    print('cookie:{}'.format(cookie))
    print('cookies:{}'.format('; '.join(cookies)))
    time.sleep(500)
    driver.quit()

if __name__ == '__main__':
    get_cookie()

  

qq cookie的更多相关文章

  1. C#7.2——编写安全高效的C#代码 c# 中模拟一个模式匹配及匹配值抽取 走进 LINQ 的世界 移除Excel工作表密码保护小工具含C#源代码 腾讯QQ会员中心g_tk32算法【C#版】

    C#7.2——编写安全高效的C#代码 2018-11-07 18:59 by 沉睡的木木夕, 123 阅读, 0 评论, 收藏, 编辑 原文地址:https://docs.microsoft.com/ ...

  2. 腾讯QQ会员中心g_tk32算法【C#版】

    最近用C#写qq活动辅助类程序,碰到了会员签到的gtk算法不一样,后来网上找了看,发现有php版的(https://www.oschina.net/code/snippet_1378052_48831 ...

  3. Python_小林的爬取QQ空间相册图片链接程序

    前言 昨天看见某人的空间有上传了XXXX个头像,然后我就想着下载回来[所以本质上这是一个头像下载程序],但是一个个另存为太浪费时间了,上网搜索有没有现成的工具,居然要注册码,还卖45一套.你们的良心也 ...

  4. 在父页面和其iframe之间函数回调 父页面回调iframe里写的函数

    // @shaoyang  父页面 window['mengBanLogin']={ mengBanArr : new Array(), mengBanLoginSuccess : function( ...

  5. Java版 QQ空间自动登录无需拷贝cookie一天抓取30WQQ说说数据&流程分析

    QQ空间说说抓取难度比较大,花了一个星期才研究清楚! 代码请移步到GitHub GitHub地址:https://github.com/20100507/Qzone [没有加入多线程,希望你可以参与进 ...

  6. QQ浏览器兼容模式下Cookie失效 导致的NetCore Cookie认证失效

    最近在写NetCore项目采用的是NetCore的Cookie认证.结果偶然发现QQ浏览器登录不好用.这里先需要了解一下set-cookie中的SameSite属性  导致原因 首先Fiddler 4 ...

  7. ASP.NET Core SameSite 设置引起 Cookie 在 QQ 浏览器中不起作用

    最近在发布了基于 ASP.NET Core 实现的新版登录页面之后,陆陆续续地接到用户反馈登录时 Antiforgery Token 总是验证失败. 日志中记录的对应错误是 Antiforgery t ...

  8. QQ浏览器、搜狗浏览器等兼容模式下,Asp.NetCore下,Cookie、Session失效问题

    原文:QQ浏览器.搜狗浏览器等兼容模式下,Asp.NetCore下,Cookie.Session失效问题 这些狗日的浏览器在兼容模式下,保存Cookie会失败,是因为SameSiteMode默认为La ...

  9. QQ空间动态爬虫

    作者:虚静 链接:https://zhuanlan.zhihu.com/p/24656161 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 先说明几件事: 题目的意 ...

随机推荐

  1. Mysql多实例数据库

    什么是Mysql的多实例? 简单的说,Mysql多实例就是一台服务器上同时开启多个不同的服务端口(如3306.3307)同时运行多个Mysql服务进程,这些服务进程通过不同socket监听不同的服务端 ...

  2. 国内下载vscode速度慢解决

    找到对应的文件,点击下载,会出现一个类似下面的链接: https://az764295.vo.msecnd.net/stable/f06011ac164ae4dc8e753a3fe7f9549844d ...

  3. 《java面试十八式》第一式 --冈本零点零一

    第一式 [冈本零点零一] 冈本零点零一:将简历包装于无形,博得人事的芳心,用过的人都说好 . 要想有更多的面试机会,简历是不可缺少的,机会都没有何谈面:所以这也是我们的第一步. 首先是简历模板: 模板 ...

  4. ruby 使用 rqrcode 生成二维码

    参考:  https://github.com/whomwah/rqrcode 1.  gem 'rqrcode' 2.  在helper中: require 'base64' def generat ...

  5. 反射从入门到精通之深入了解Class类

    .katex { display: block; text-align: center; white-space: nowrap; } .katex-display > .katex > ...

  6. Manjaro-kde-18.1.3安装体验

    身为Linux排名第一的版本,怎么能不安装一下亲自体验 制作启动U盘 Manjaro身为arc系列的一员,所以我选择使用raw的方式写入(其实我是在Ubuntu中用dd方式写入的,Windows用户也 ...

  7. 【玩转SpringBoot】给自动配置来个整体大揭秘

    上一篇文章中提到的条件注解,只是自动配置整体解决方案中的一个环节而已,可以说是管中窥豹. 本文就逐步擦除迷雾,让整体浮现出来,这样就会有一个宏观的认识. 除了写代码之外,还能干点什么? 提到“配置”这 ...

  8. VS2019 开发Django(九)------内置模板和过滤器

    导航:VS2019开发Django系列 紧接上篇,继续介绍Django中的模板,考虑可能篇幅过长,所以分为两部分来讲,今天的主要内容: 1)内置模板和过滤器 母版,继承关系.头部导航和页脚,是需要与其 ...

  9. 《CSAPP》实验二:二进制炸弹

    二进制炸弹是第三章<程序的机器级表示>的配套实验,这章主要介绍了x64汇编,包括:操作数的表示方式,数据传送指令,算术和逻辑指令,控制流跳转指令,过程(procedure)的实现与运行时栈 ...

  10. 迈布-----UE4AI自动巡逻与攻击

    这个行为树给我恶心的都想吐,我用的是4.24,跟着官网做达不到那个效果,跟着视频做也达不到那个效果,跟我弄的非常不耐烦,最后终于在今天整出来了.有的地方用了一下我自己的逻辑.//诸位依靠教程的,一定得 ...