playwright替换文件

"""
    修改返回的内容
"""


from playwright.sync_api import sync_playwright
import json
import re

def intercept_requests(route, request):
    # 拦截指定 URL 的请求
    # if "js/chunk-10192a00.243cb8b7.js" in request.url:
    print(request.url)
    # 使用正则替换
    pattern = re.compile(r"js/chunk-\w+.\w+.js")
    if pattern.search(request.url):
        print("匹配成功, 开始替换")
        route.fulfill(path="./chunk.js")
        # 修改返回的内容
        # route.fulfill(status=200, body='{"message": "Hello, World!"}', headers={'Content-Type': 'application/json'})
    else:
        # 其他请求不做处理,继续原始请求
        route.continue_()


with sync_playwright() as p:
    browser = p.chromium.launch(headless=False)
    page = browser.new_page()

    # 设置请求拦截器
    page.route("**/**", lambda route, request: intercept_requests(route, request))
    # page.route("**/js/chunk-10192a00.243cb8b7.js",lambda route, request: intercept_requests(route, request))

    #替换指定文件
    """
    直接替换 不同请求拦截方式替换
    """
    page.route("**/js/chunk-10192a00.243cb8b7.js", lambda route: route.fulfill(path="./chunk.js"))

    # 打开页面
    page.goto("https://www.baidu.com")
    input('输入任意内容结束:')

# 正则匹配替换字符串:

 pattern = r'original//productimg/\d+/\d+/'
# 替换为的字符串
replacement = 'original//productimg/1600/1600/'
# 使用正则表达式进行替换
new_url = re.sub(pattern, replacement, url)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值