首页 > 编程语言 >python+playwright 以非無痕模式打开chrome浏览器

python+playwright 以非無痕模式打开chrome浏览器

时间:2024-03-15 10:00:37浏览次数:26  
标签:playwright python 模式 datetime chrome 以非 now

在使用python+playwright 想从网页下载Excel数据,因为需要经过SSO,携带Tokey才可以访问数据,所以无痕模式下搞不好,使用非无痕模式打开浏览器,就可以获取cookie,成功达到效果。

点击查看代码
from multiprocessing.sharedctypes import Value
from playwright.sync_api import sync_playwright
from datetime import datetime, timedelta

now = datetime.now()
# 獲取當前日期
now_date = now.today().strftime('%Y-%m-%d')
nowMonths = now.today().strftime('%Y-%m')
print(nowMonths)

#以非無痕模式打開瀏覽器,不然沒有cookie
p = sync_playwright().start()
browser = p.chromium.launch_persistent_context(
    # 指定本机用户缓存地址
    user_data_dir=f"D:\chrome_user\yyl1",
    # 接收下载事件
    accept_downloads=True,
    # 设置 GUI 模式
    headless=False,
    bypass_csp=True,
    slow_mo=1000,
    channel="chrome"
)
page = browser.pages[0]

url1 = "http://*****/"
url2 = "http://******/"
dict = {"A1":url1, "B1":url2}

for key,value in dict.items():
    print(">>>打開網頁<<<")
    page.goto(value)
    print(">>>數據加載中,請耐心等待.(為確保數據完全加載完成,會延遲15秒.)<<<")
    page.wait_for_timeout(15000)
    print('>>>準備開始'+ key +'下載Excel<<<')
    page.locator("#ButtonLink").click()
    with page.expect_download() as download_info:
        with page.expect_popup() as page1_info:
            page.locator("#ButtonLink").click()
            page.get_by_role("link", name="Excel").click()
            page.wait_for_timeout(10*1000)
        page1 = page1_info.value
    #download.failure()
    download = download_info.value

    download.save_as(now_date + key + "通報表.xlsx")
    print(">>>"+ key +"Excel下載完畢<<<")
browser.close()

标签:playwright,python,模式,datetime,chrome,以非,now
From: https://www.cnblogs.com/qiuyublog/p/18074779

相关文章

  • 5分钟上手Python爬虫:从干饭开始,轻松掌握技巧
    很多人都听说过爬虫,我也不例外。曾看到别人编写的爬虫代码,虽然没有深入研究,但感觉非常强大。因此,今天我决定从零开始,花费仅5分钟学习入门爬虫技术,以后只需轻轻一爬就能查看所有感兴趣的网站内容。广告?不存在的,因为我看不见。爬虫只会获取我感兴趣的信息,不需要的内容对我而言只是一......
  • 掌握Python库的Bokeh,就能让你的交互炫目可视化
    本文分享自华为云社区《Bokeh图形魔法:掌握绘图基础与高级技巧,定制炫目可视化》,作者:柠檬味拥抱。Bokeh是一个用于创建交互式可视化图形的强大Python库。它不仅易于使用,而且功能强大,适用于各种数据可视化需求。本文将介绍Bokeh库的绘图可视化基础入门,重点说明常用的参数,并通过实例......
  • python的字符串方法举例
    Python中的字符串对象提供了许多内置的方法,用于操作和处理字符串。以下是一些常用的字符串方法及其示例:1.split()将字符串分割为子字符串列表,并返回该列表。s="HelloWorld"words=s.split()#默认按空格分割print(words)#输出:['Hello','World']#也可以指定分......
  • Python爬虫实战系列3:今日BBNews编程新闻采集
    一、分析页面打开今日BBNews网址https://news.bicido.com,下拉选择【编程】栏目1.1、分析请求F12打开开发者模式,然后点击Network后点击任意一个请求,Ctrl+F开启搜索,输入标题ApacheDoris2.1.0版本发布,开始搜索搜索结果显示直接返回的json格式,那就soeasy了,直接copycurl,......
  • python的代码发布到服务器上需要注意的事项
    1、服务器的python运行环境配置。从官网上 https://www.python.org/ 下载服务器操作系统对应的版本。 然后配置 python和pip命令运行的环境变量,这是windows下的 检查是否正常:  2、开发时引用的第三方库要在服务器上安装。   a.首先获取需要的第三方库......
  • 【python】自动化工具Selenium与playwright去除webdriver检测
    对这个世界如果你有太多的抱怨跌倒了就不敢继续往前走为什么人要这么的脆弱堕落请你打开电视看看多少人为生命在努力勇敢的走下去我们是不是该知足珍惜一切就算没有拥有                     ......
  • python第十三天
    map函数map函数可以将函数进行灵活运用,先预先设置需要调用的函数,然后最后对map函数进行设置,最终输出时可以将预先设置函数对map函数进行处理,已达到灵活运用的结果defadd_1(x):returnx+1defre_1(x):returnx-1defkf_1(x):returnx**2defmap_test(func......
  • Python:自动化处理PDF文档集合,提取文献标题、合并文献PDF并生成目录和页码
    Python:自动化处理PDF文档集合,提取文献标题、合并文献PDF并生成目录和页码引言:功能概述步骤一:提取PDF标题步骤二:生成目录和页码,合并PDF技术亮点代码步骤一:提取PDF标题(Step_two.ipynb)步骤二:生成目录和页码,合并PDF(Step_two.ipynb)引言:在学术研究、文档管理等领域,经常需......
  • python上传图片到网站
    使用requests库实现图片上传在Python中,requests库是处理HTTP请求的一个强大工具,它提供了一种简单易用的方法来执行网络请求。在将图片上传到网站的场景中,可以使用requests库中的post方法,将图片作为多部分编码文件(multipart-encodedfile)发送到服务器。第一,需要一份待上传的图......
  • python项目开发——总结笔记(csv excel读取 服务端端口进程 拟合预测 时间格式转化 服
    目录部署服务端程序主服务端控制程序main.py子目录的计算程序jisuan.py读取数据读取csv数据读取读取excel时间格式转换时间戳转datetime并且生成时间序列最后格式化时间 常用函数拟合预测服务端程序控制与维护部署服务端程序主服务端控制程序main.pyfromfl......