iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python+Selenium+Webdriver实现自动执行微软奖励积分脚本
  • 422
分享到

Python+Selenium+Webdriver实现自动执行微软奖励积分脚本

Python 官方文档:入门教程 => 点击学习

摘要

目录脚本运行环境首次运行执行脚本开始刷奖励积分脚本运行环境 python 3.6+edge浏览器(推荐使用,因为在edge浏览器中可以获得额外12分,当然chrome浏览器也可以)

脚本运行环境

python 3.6+edge浏览器(推荐使用,因为在edge浏览器中可以获得额外12分,当然chrome浏览器也可以)

WEBdriver (需匹配电脑安装的浏览器版本)

selenium 4.8.0

首次运行

首次运行需要先获取账号信息,由于这里使用webdriver,打开类似无痕浏览器,需要通过带cookie的方式登录微软账号

from selenium import webdriver
import time
import JSON

# 填写webdriver的保存目录
driver = webdriver.Edge('/Users/XXXX/Downloads/edgedriver_Mac64/msedgedriver')

# 记得写完整的url 包括Httphttps
driver.get('https://cn.bing.com/')

# 程序打开网页后60秒内 “手动登陆账户”
time.sleep(60)

with open('cookies.txt','w') as f:
    # 将cookies保存为json格式
    f.write(json.dumps(driver.get_cookies()))

driver.close()

先执行该脚本,然后在弹出的浏览器窗口手动登录微软账号,这里设置的是等待60秒,如果密码比较长的可以修改一下,登录完成后等待窗口自动关闭,这里会保存你的cookie信息到你当前路径

PS:我这边测试过cookie有效时间较长,如果提示登录过期后需要再执行一次

执行脚本开始刷奖励积分

import json
import random
from selenium import webdriver
from selenium.webdriver.edge.options import Options

import time
def OpenUrl(url):
    # 访问网址
    driver.get(url)
    with open('cookies.txt', 'r') as f: #由于webdriver启动时类似无痕模式,使用带cookie的方式登录微软账号
        cookies_list = json.load(f)
        for cookie in cookies_list:
            if isinstance(cookie.get('expiry'), float):
                cookie['expiry'] = int(cookie['expiry'])
            driver.add_cookie(cookie)

def run_pc():
    OpenUrl('https://cn.bing.com/search?q='+str(random_number))

if __name__ == "__main__":
    options = Options()
    # options.add_argument("--headless")  #设置后台运行,无窗口化
    # mobile_emulation = {'deviceName': 'iPhone 6'}   #添加移动端
    # options.add_experimental_option("mobileEmulation", mobile_emulation)    #使用移动端模拟器打开
    driver = webdriver.Edge('/Users/XXXX/Downloads/edgedriver_mac64/msedgedriver', options=options)
    for i in range(30):        #每次搜索获取3积分,根据个人等级调整循环次数
        random_number = random.randint(1, 100)
        run_pc()
        print('第', i + 1, '次完成')
        time.sleep(2)
    driver.quit()
    print('任务完成')

如果觉得窗口化占用资源过多的话可以使用无窗口化,获取移动端积分可以把23、24行注释掉

到此这篇关于Python+Selenium+Webdriver实现自动执行微软奖励积分脚本的文章就介绍到这了,更多相关Python Selenium Webdriver自动执行微软奖励积分内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python+Selenium+Webdriver实现自动执行微软奖励积分脚本

本文链接: https://www.lsjlt.com/news/195975.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作