Pesquise os rastros de uma pessoa em toda a rede, rastreie os resultados de pesquisa do Baidu

O autor tem algo a dizer

Hoje, quero pesquisar em toda a rede os vestígios de uma pessoa para ver se consigo o que desejo.
Ideias:

  1. rastreador python (rastreando o site do Baidu), insira o nome
  2. Os resultados do rastreador são gravados em um arquivo txt
  3. O arquivo txt resultante contém muitos nomes duplicados ou alguns outros dados sujos
  4. ctrl + F, insira outras palavras-chave dessa pessoa, como: State Grid Chongqing.
  5. Defina para um local específico, copie o URL antes do local e abra-o no navegador para navegar até as informações da pessoa.
  6. Se a pessoa não pode ser procurada por palavras-chave, a pessoa nomeada pelo nome não deixou vestígios na Internet.

Análise de URL

Copiar URL

Aqui você verá que o que você vê na barra de URL do navegador é chinês, mas se você copiar o url e colá-lo em um bloco de notas ou código, ficará parecido com o acima? )
Alguns parâmetros get ou palavras-chave são codificados nas URLs de muitos sites, portanto, quando os copiarmos, ocorrerão problemas. Mas o URL copiado pode ser aberto diretamente. Não se preocupe com isso neste exemplo.
Então, como podemos rastrear automaticamente outras páginas além da primeira página, abrir a terceira página, o endereço da página da web é o seguinte, a análise descobriu que a diferença da primeira página é: a primeira página último pn = 10, o terceiro página pn = 20
, podemos pensar em O método de obtenção automática de várias páginas da web pode ser implementado em um loop for. Após cada loop, pn + 10

Examinando os elementos encontrados, a área de conteúdo e a área de conteúdo única são mostradas na figura

O código
python
não interpreta o código


from bs4 import BeautifulSoup
import numpy as np
import requests
from requests.exceptions import  RequestException
import pandas as pd
import re


#读取网页
def craw(url,page):
    try:

        headers = {
    
    
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3947.100 Safari/537.36"}
        html1 = requests.request("GET", url, headers=headers,timeout=10, verify=False)
        html1.encoding ='utf-8' # 加编码,重要!转换为字符串编码,read()得到的是byte格式的
        html=html1.text

        return html
    except RequestException:#其他问题
        print('读取error')
        return None
#解析网页并保存数据到表格
def pase_page(url,page):
    html=craw(url,page)
    html=str(html)
    if len(html)>10:
        soup = BeautifulSoup(html, 'lxml')
        shangping=soup.select('#content_left .result.c-container.new-pmd')#所有内容div

        for li in shangping:#遍历每一个内容

            " 网址"

            website=str(li.select('.t'))
            web=str(re.findall('href=(.* )target',website))


            " 内容标题"
            title=str(re.findall('target(.*)</a>',website))
            title=re.sub('[_blank,=,em,<,,">]','',title)#删除一些奇怪字符

            " 内容"
            content=str(li.select('.c-abstract'))
            content=re.sub('[divclasscabstractem,em,<,=,"-",>,-,/]','',content)#剔除一些奇怪的字符
            #content=remove_punctuation(content)
            #content=content.apply(remove_punctuation)

            " 写入txt"
            with open('百度搜索.txt','a',encoding='utf-8')as c:
                c.write(web+'\n')
                c.write(title+'\n')
                c.write(content+'\n')



for i  in range(10,650,10):#遍历网页10,。。。。。#查看末页网址,发现最后pn=650
    print(i)
    url='https://www.baidu.com/s?wd=%E4%BD%99%E7%99%BB%E6%AD%A6&pn='+str(i)+'&oq=%E4%BD%99%E7%99%BB%E6%AD%A6&tn=56080572_3_hao_pg&ie=utf-8&usm=1&rsv_idx=2&rsv_pq=ffcc5d4d00001b62&rsv_t=49ac9CnXhelNWIZNsv%2B236pf8b0c4gpk9tfUY%2BXO5jIYkgpRGSEri7Kz6r%2Byy%2FQz9qfrtUnb25E'
#url='https://www.baidu.com/s?wd=%E4%BD%99%E7%99%BB%E6%AD%A6&pn=20&oq=%E4%BD%99%E7%99%BB%E6%AD%A6&tn=56080572_3_hao_pg&ie=utf-8&usm=1&rsv_idx=2&rsv_pq=ffcc5d4d00001b62&rsv_t=49ac9CnXhelNWIZNsv%2B236pf8b0c4gpk9tfUY%2BXO5jIYkgpRGSEri7Kz6r%2Byy%2FQz9qfrtUnb25E'
    pase_page(url,i)


Pasta de resultados

Eu conheço uma das palavras-chave dessa pessoa: State Grid Chongqing
ctrl + F search. Você pode localizar o local específico. Em seguida, copie o URL na frente do local para encontrar essa pessoa.

Não vou analisar o texto dessa pessoa aqui (afinal, essa pessoa é importante).

Claro, você pode rastrear outras pessoas e modificar o url por conta própria.
Insira a descrição da imagem aqui

Autor: Elétrico - Yu Dengwu

Acho que você gosta

Origin blog.csdn.net/kobeyu652453/article/details/115026689
Recomendado
Clasificación