Vários métodos comumente usados no dramaturgo (no modo síncrono)

Vários métodos comumente usados ​​no dramaturgo (no modo síncrono)

uma breve introdução

No ambiente Python, o Playwright fornece uma API síncrona relativamente completa e os desenvolvedores podem optar por usar a API assíncrona ou a API síncrona de acordo com suas preferências. A seguir, uma introdução aos métodos de sincronização comuns do Playwright.

método específico

1.page.goto(url[, options])

Como a API assíncrona, esse método é usado para carregar e pular para a URL especificada. Ele aceita um parâmetro de URL e um parâmetro de opções opcionais. Os parâmetros de opção comumente usados ​​incluem:

  • wait_until: Especifica o estado de carregamento da página, o padrão é load. Pode ser definido para domcontentloadedou networkidle0etc.

Aqui está um exemplo usando page.gotoo método :

page.goto('https://www.example.com')
page.goto('https://www.example.com', wait_until='networkidle0') # 等待网络空闲状态

2.page.wait_for_selector(selector[, options])

Este método é usado para esperar que os elementos correspondentes ao seletor CSS especificado apareçam na página. Ele aceita um parâmetro de seletor e parâmetros de opção opcionais. Os parâmetros de opção comumente usados ​​incluem:

  • visible: Especifica que o elemento deve estar visível, o padrão é False.
  • hidden: Especifica que o elemento deve estar oculto, o padrão é False.

Aqui está um exemplo usando page.wait_for_selectoro método :

page.wait_for_selector('#myButton')
page.wait_for_selector('.my-div', visible=True) # 等待可见的元素

3.page.wait_for_load_state(state=None[, timeout=30000])

Semelhante à API assíncrona, este método é utilizado para aguardar o status de carregamento da página, onde stateo parâmetro pode ser um dos seguintes valores:

  • load: A página está totalmente carregada.
  • domcontentloaded: O conteúdo DOM foi carregado.
  • networkidle0: Quando a rede está ociosa.
  • networkidle2: O número de conexões de rede é estável e excede 500 milissegundos.

Aqui está um exemplo usando page.wait_for_load_stateo método :

page.goto('https://www.example.com')
page.wait_for_load_state('networkidle0') # 等待网络空闲状态

4.page.click(selector[, options])

Assim como a API assíncrona, este método simula um evento click no elemento, aceitando um parâmetro seletor e um parâmetro opcional de opções. Os parâmetros de opção comumente usados ​​incluem:

  • button: O botão que simula um clique do mouse, o padrão é left.
  • click_count: O número de cliques simulados, o padrão é 1.

Aqui está um exemplo usando page.clicko método :

page.click('#myButton')

5.page.type(selector, text, delay=None)

Semelhante à API assíncrona, esse método é usado para inserir conteúdo de texto no elemento especificado. Aceita um parâmetro seletor e o conteúdo do texto de entrada e também pode incluir os seguintes parâmetros de opções opcionais:

  • delay: Simula o tempo de atraso em milissegundos para cada entrada de caractere.

Aqui está um exemplo usando page.typeo método :

page.type('#myInput', 'Hello World!')

6.page.evaluate(pageFunction, *args)

Semelhante à API assíncrona, esse método executa a função JavaScript especificada no contexto da página e retorna o valor de retorno da função. Ele pode executar código JavaScript personalizado no navegador. Aqui está um exemplo usando page.evaluateo método :

result = page.evaluate('() => { return 1 + 2; }')

7.page.wait_for_function(pageFunction[, timeout=None, interval=None], *args)

Semelhante à API assíncrona, esse método continua a executar a função JavaScript especificada até que a função retorne True. Ele pode ser usado para aguardar a exibição de conteúdo alterado dinamicamente na página ou para aguardar a conclusão de uma operação assíncrona. Aqui está um exemplo usando page.wait_for_functiono método :

page.wait_for_function('() => document.querySelector("#myButton").disabled === false')

8.page.screenshot(path=None, *, full_page=True, clip=None, quality=None, omit_background=False)

Semelhante à API assíncrona, esse método é usado para fazer uma captura de tela da página atual e salvá-la no arquivo especificado. Ele aceita um parâmetro de opção opcional, os parâmetros de opção comumente usados ​​incluem:

  • path: Especifique o caminho e o nome do arquivo para salvar a captura de tela.
  • full_page: especifica se a captura de tela contém a página inteira, o padrão é True.
  • clip: especifique o tamanho e a posição da captura de tela.
  • quality: especifica a qualidade da captura de tela.
  • omit_background: especifica se a cor de fundo deve ser ignorada.

Aqui está um exemplo usando page.screenshoto método :

page.screenshot(path='example.png', full_page=True)
page.screenshot(clip={
    
    'x': 0, 'y': 0, 'width': 800, 'height': 600})

Resumir

Os acima são vários métodos comumente usados ​​pelo Playwright no ambiente Python. Os desenvolvedores podem escolher o método que mais lhes convém de acordo com suas necessidades.

Acho que você gosta

Origin blog.csdn.net/ekcchina/article/details/130572692
Recomendado
Clasificación