49新一代自动化测试神器playwright+python系列课程_playwright_获取网页的html或元素的html

49_playwright_获取网页的html或元素的html

爬虫是很多小伙伴喜欢做的事情,爬虫时需要获取到整个页面的html,playwright也提供了获取整个页面的html的功能,使用page.content()就可以实现。另外,playwright还可以获取某个元素对应的html,使用page.inner_html()可以获取。

实践代码:

# '''

# author: 测试-老姜   交流微信/QQ:349940839

# 欢迎添加微信或QQ,加入学习群共同学习交流。

# QQ交流群号:877498247

# 西安的朋友欢迎当面交流。

# '''

from playwright.sync_api import Playwright, sync_playwright, expect

def run(playwright: Playwright) -> None:

    browser = playwright.chromium.launch(headless=False,slow_mo=2000)

    context = browser.new_context(record_video_dir="videos") #设置录屏保存目录

    page = context.new_page()

    page.goto("http://127.0.0.1/zentao/user-login.html") # 使用相对地址

    page.locator("#account").fill("admin")

    page.locator("input[name=\"password\"]").click()

    page.locator("input[name=\"password\"]").fill("Deshifuzhi01")

    page.locator('text="登录"').click()

    r = page.content() # 获取整个页面的html

    print(r)

    loc = page.frame_locator('#appIframe-my').locator('#main')

    r = loc.inner_html() # 获取id=main的元素的html

    print(r)

    page.wait_for_timeout(10000)

    # ---------------------

    context.close() # 上下文关闭时保存录屏

    browser.close()

with sync_playwright() as playwright:

    run(playwright)

学会这两个方法的使用后,小伙伴就可以愉快的爬虫了。

posted @ 2024-03-21 11:06  测试_老姜  阅读(67)  评论(0)    收藏  举报