Rastreamento através de pedidos e módulo de dados do site lxml

Aqui dar uma simples Liezi, para capturar a imagem do título em casa!

 

 

 

 

 

 

 

O primeiro passo é a necessidade de fazer primeiro réptil camuflagem UA, UA inicia uma solicitação para o site fazendo-se passar disfarçado como um navegador, existe um parâmetro de cabeçalhos quando o pedido de solicitação de envio, podemos colocar este parâmetro em User-Agent cabeçalhos este parâmetro

cabeçalhos = {
     ' User-Agent ' : ' Mozilla / 5.0 (Windows NT 10.0; Win64; x64) AppleWebKit / 537,36 (KHTML, como gecko) Cromo / 80.0.3987.149 Safari / 537,36 ' 
}

Você pode encontrar este parâmetro no navegador a ferramenta de captura de pacotes

 

 

 

Bem, então podemos enviar uma solicitação para uma página para obter as páginas de dados!

importação pedidos
 de lxml importação etree

cabeçalhos = {
     ' User-Agent ' : ' Mozilla / 5.0 (Windows NT 10.0; Win64; x64) AppleWebKit / 537,36 (KHTML, como gecko) Cromo / 80.0.3987.149 Safari / 537,36 '
}

url = ' http://699pic.com/photo/ '

Resposta = requests.get (url = url, headers = cabeçalhos) .text # neste momento para obter a página de dados

 

Em seguida, precisamos chegar ao etree alvo página propagação gerado

árvore = etree.HTML (resposta)

 

 

 A partir deste gráfico, podemos ver que esta é uma imagem de cada div e estão na mesma div, o título está no interior de cada div tags p, div, então, podemos colocar isso em um só lugar, circulação foram para obtê-lo?

O resultado é óbvio, é claro que você pode

 

div_list = tree.xpath ( ' // div [@ class = "img-show"] / div / div / div ' )
 print (div_list)
 para div em div_list:
    nome = div.xpath ( ' ./a [2] / p / text () ' ) [0]
     print (nome)

 

A primeira delas é uma coleção div imagem div_list, armazenado na impressão olhou para uma lista de

 

 

Esta lista é então reciclado, pode ser levado para fora dos elementos correspondentes no valor de p lista.

O efeito líquido:

 

 

Todo o código é mostrado abaixo:

importação pedidos
 de lxml importação etree

cabeçalhos = {
     ' User-Agent ' : ' Mozilla / 5.0 (Windows NT 10.0; Win64; x64) AppleWebKit / 537,36 (KHTML, como gecko) Cromo / 80.0.3987.149 Safari / 537,36 '
}

url = ' http://699pic.com/photo/ '

resposta = requests.get (URL = URL, cabeçalhos = cabeçalhos) .text
árvore = etree.HTML (resposta)
div_list = tree.xpath ( ' // div [@ class = "img-show"] / div / div / div ' )
 print (div_list)
f = aberto ( ' name.txt ' , ' w ' , que codifica = ' utf-8 ' )
 para div em div_list:
    Nome = div.xpath ( ' ./a [2] / p / texto () ' ) [0]
    f.write (nome + ' \ n ' )

 

Acho que você gosta

Origin www.cnblogs.com/huizaia/p/12581418.html
Recomendado
Clasificación