吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7622|回复: 19
收起左侧

[Python 转载] 记录自用python selenium 取cookie免登陆小技巧

  [复制链接]
vsyour 发表于 2019-4-17 21:34
本帖最后由 vsyour 于 2019-7-19 11:33 编辑

有了cookie网站就不需要登陆了。
对于那些有验证码的网站利用cookie登陆还是一个比较省时省力的办法。

代码如下:
[Python] 纯文本查看 复制代码
# coding:utf-8
from fake_useragent import UserAgent
from selenium import webdriver
from bs4 import BeautifulSoup
import time
import datetime

ua = UserAgent()


def kanxue_Chrome():
    loginUrl = r'https://passport.kanxue.com/user-login.htm'
    # 进入浏览器设置
    options = webdriver.ChromeOptions()
    # 设置中文
    options.add_argument('lang=zh_CN.UTF-8')
    # 更换头部
    useragent = ua['google chrome']
    options.add_argument('"%s"' % useragent)
    browser = webdriver.Chrome(chrome_options=options,executable_path=r'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe')
    browser.get(loginUrl)
    time.sleep(50)  # 程序走到这里时暂停,登陆网页后得到cookie

    print('cookie:-->start'.center(130, '*'))
    for cookie in browser.get_cookies():
        #print("%s -> %s" % (cookie['name'], cookie['value']))
        tip='''browser.add_cookie({'name': '%s', 'value': '%s'})'''% (cookie['name'],cookie['value'])
        print(tip)
    print('cookie:-->End'.center(130, '*'))
    # 将生成的cookies 直接加入就行了


if __name__ == '__main__':
    kanxue_Chrome()





20190719 更新
[Python] 纯文本查看 复制代码
# coding:utf-8

'''
获取网站cookie信息
'''
from selenium import webdriver
import time


# from fake_useragent import UserAgent
# ua = UserAgent()

class GetCookie:
    def __init__(self):
        pass

    def chrome(self, url):
        # 进入浏览器设置
        # options = webdriver.ChromeOptions()
        # 设置中文
        # options.add_argument('lang=zh_CN.UTF-8')
        # options.add_argument('lang=en_US.UTF-8')
        # 更换头部
        # useragent = ua['google chrome']
        # options.add_argument('"%s"' % useragent)
        # browser = webdriver.Chrome(chrome_options=options,executable_path=r'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe')
        browser = webdriver.Chrome(
            executable_path=r'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe')
        browser.get(url)
        time.sleep(20)  # 程序走到这里时暂停,登陆网页后得到cookie
        print('cookie:-->start'.center(130, '*'))
        for cookie in browser.get_cookies():
            # print("%s -> %s" % (cookie['name'], cookie['value']))
            tip = '''browser.add_cookie({'name': '%s', 'value': '%s'})''' % (cookie['name'], cookie['value'])
            print(tip)
        print('cookie:-->End'.center(130, '*'))
        # 将生成的cookies 直接加入就行了

    def firefox(self, url):
        browser = webdriver.Firefox(executable_path=r'C:\Anaconda3\geckodriver.exe')
        browser.get(url)
        time.sleep(20)  # 程序走到这里时暂停,登陆网页后得到cookie
        print('cookie:-->start'.center(130, '*'))
        for cookie in browser.get_cookies():
            # print("%s -> %s" % (cookie['name'], cookie['value']))
            tip = '''browser.add_cookie({'name': '%s', 'value': '%s'})''' % (cookie['name'], cookie['value'])
            print(tip)
        print('cookie:-->End'.center(130, '*'))


if __name__ == '__main__':
    # 实例化
    getCookie = GetCookie()
    # 用chrome获取cookie
    #getCookie.chrome('https://www.taobao.com')
    # 用 firefox 获取cookie
    getCookie.firefox('https://www.taobao.com')

免费评分

参与人数 3吾爱币 +2 热心值 +3 收起 理由
岚瑟 + 1 + 1 谢谢@Thanks!
AC1981 + 1 我很赞同!
s_qiu + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| vsyour 发表于 2019-5-2 11:03
zyjia 发表于 2019-5-1 11:38
如何加已有的cookie,给一个完整的代码,可以吗?最好是吾爱破解的,谢谢。

[Python] 纯文本查看 复制代码
# coding:utf-8
from fake_useragent import UserAgent
from selenium import webdriver
from bs4 import BeautifulSoup
import time
import datetime
ua = UserAgent()

def kanxue_Chrome():
    loginUrl = r'https://www.52pojie.cn/'
    # 进入浏览器设置
    options = webdriver.ChromeOptions()
    # 设置中文
    options.add_argument('lang=zh_CN.UTF-8')
    # 更换头部
    useragent = ua['google chrome']
    options.add_argument('"%s"' % useragent)
    #browser = webdriver.Chrome(chrome_options=options,executable_path=r'C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe')
    browser = webdriver.Chrome(chrome_options=options)
    browser.get(loginUrl)
    time.sleep(50)  # 程序走到这里时暂停,登陆网页后得到cookie

    # print('cookie:-->start'.center(130, '*'))
    # for cookie in browser.get_cookies():
    #     #print("%s -> %s" % (cookie['name'], cookie['value']))
    #     tip='''browser.add_cookie({'name': '%s', 'value': '%s'})'''% (cookie['name'],cookie['value'])
    #     print(tip)
    # print('cookie:-->End'.center(130, '*'))
    # 将生成的cookies 直接加入就行了
    browser.add_cookie({'name': 'htVD_2132_noticeTitle', 'value': '1'})
    browser.add_cookie({'name': 'htVD_2132_checkpm', 'value': '1'})
    browser.add_cookie({'name': 'htVD_2132_lastact', 'value': '改成你自己的'})
    browser.add_cookie({'name': 'htVD_2132_onlineusernum', 'value': '改成你自己的'})
    browser.add_cookie({'name': 'htVD_2132_nofavfid', 'value': '1'})
    browser.add_cookie({'name': 'htVD_2132_lastvisit', 'value': '改成你自己的'})
    browser.add_cookie({'name': 'htVD_2132_ttask', 'value': '改成你自己的'})
    browser.add_cookie({'name': 'htVD_2132_connect_is_bind', 'value': '1'})
    browser.add_cookie({'name': 'htVD_2132_lip', 'value': '改成你自己的'})
    browser.add_cookie({'name': 'htVD_2132_auth',
                        'value': '改成你自己的'})
    browser.add_cookie({'name': 'htVD_2132_pc_size_c', 'value': '0'})
    browser.add_cookie({'name': 'htVD_2132_lastcheckfeed', 'value': '改成你自己的'})
    browser.add_cookie({'name': 'htVD_2132_saltkey', 'value': '改成你自己的'})
    browser.add_cookie({'name': 'Hm_lpvt_46d556462595ed05e05f009cdafff31a', 'value': '改成你自己的'})
    browser.add_cookie({'name': 'htVD_2132_ulastactivity', 'value': '改成你自己的'})
    browser.add_cookie({'name': 'Hm_lvt_46d556462595ed05e05f009cdafff31a', 'value': '改成你自己的'})
    browser.add_cookie({'name': '_uab_collina', 'value': '改成你自己的'})

if __name__ == '__main__':
    kanxue_Chrome()

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
zyjia + 1 + 1 热心回复!

查看全部评分

 楼主| vsyour 发表于 2019-4-17 22:15

登陆账号后就会生成出加cookie的代码,然后把生成出来的代码放到你的脚本中,这样等待的那部份就能注释掉了。

就不需要去一个个复制那么麻烦了。。

哈哈这个感觉不太好表达,不知道你明白我的意思没。。。你试试看吧。
yitoumao 发表于 2019-4-17 21:57
龙龙龙龙龙龙 发表于 2019-4-17 22:02
谢谢分享
ellada 发表于 2019-4-17 22:03
selenium最大的问题是浏览器要和引擎版本匹配,否则起不来。
sitiger 发表于 2019-4-17 22:06
貌似不全啊
 楼主| vsyour 发表于 2019-4-17 22:12
ellada 发表于 2019-4-17 22:03
selenium最大的问题是浏览器要和引擎版本匹配,否则起不来。

是的,这是经常会碰到的问题.
我一般是会到这里找对应的版本放进去就不会有问题了.
https://sites.google.com/a/chromium.org/chromedriver/downloads
fengwolf3 发表于 2019-4-18 11:21
楼主 这个适用京东cookie登录吗
 楼主| vsyour 发表于 2019-4-18 11:28
fengwolf3 发表于 2019-4-18 11:21
楼主 这个适用京东cookie登录吗

京东也是适合的
huguo002 发表于 2019-4-18 17:18
调用了看不懂得模块 头好大 脑阔痛。。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-16 16:02

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表