Prática do projeto de rastreador
ilustrar
Blog pessoal do autor
Blog de pimentão frito com panela quente
Todos os projetos são projetos de treinamento e compartilhamento de autor. Se houver alguma violação, entre em contato conosco para excluí -lo . É para aprender e compartilhar apenas e não pode realizar atividades comerciais .
Devido a problemas de tempo na conclusão do programa, alguns projetos não podem ser reutilizados .
Veja Note.txt para notas de prática
Este projeto será atualizado continuamente
Para algumas explicações práticas do projeto, consulte a estação B: https://space.bilibili.com/35242527/channel/collectionDetail?sid=1590251
Abaixo está a classificação pessoal para a dificuldade de rastejamento do site
| nota | Logotipo | Descrição da dificuldade |
|---|
| Ovo de aranha | 0 | começando |
| Jovem aranha | 00 | Cruzou o limiar |
| Pequena aranha | * | Primário |
| Grande aranha | ** | Um pouco mais alto que o júnior |
| Aranha gigante | *** | Dificuldade média |
| Aranha radiante | + | Dificuldade moderada e superior |
| Aranha venenosa | ++ | Mais difícil |
| Spider King | +++ | Desastre |
| Espírito da aranha | REI | inferno |
Catálogo de projetos
Gráfico TD;
Noções básicas-> solicitação;
Básico-> análise de HTML e regulares;
Noções básicas-> Scrapy;
Noções básicas-> rastreador assíncrono de alto desempenho;
Noções básicas-> Feapder;
Automação-> Selenium
Automação-> dramaturgo;
Capítulo Avançado-> Caso abrangente;
Capítulo avançado-> tópico reverso do JS;
JS Tópico reverso-> Cabeçalho de solicitação ou criptografia de dados de resposta;
JS Tópico reverso-> Detecção de impressões digitais do navegador;
JS Tópico reverso-> Artigo do WebPack;
JS Tópico reverso-> Detecção ambiental;
JS Tópico reverso-> WASM;
Código de verificação-> Slider;
Código de verificação-> Clique para selecionar;
Carregando Biblioteca de terceiros usada no projeto
pip install requests # requests库,爬虫的开始
pip install curl_cffi # 标准tls请求库
pip install lxml # xpath提取数据
pip install playwright # 自动化需要
pip install ddddocr # 识别验证码
pip install selenium # 自动化需要,推荐playwright
pip install scrapy # 爬虫框架
pip install " feapder[all] " # 新一代爬虫框架
pip install pycryptodome # python标准密码库
pip install pyexecjs2 # python调用js代码
pip install m3u8 # 下载m3u8视频
pip install prettytable # 格式化输出
pip install tqdm # 进度条
pip install loguru # 强大的日志工具库
pip install retrying # 强大的重试工具
npm install crypto-js/cryptojs # 二选一,js标准密码库
npm install jsdom # js模拟浏览器的dom和bom
npm install tough-cookie # 浏览器cookie
Básico
Solicitar
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| Cavaleiro atendente | Página da web do Baidu | O primeiro programa de rastreador | Clique aqui |
| Cavaleiro atendente | Identificação de UA | Rastreamento reverso inicial | Clique aqui |
| Cavaleiro atendente | Tradução Baidu | Conheça o pedido de postagem | Clique aqui |
| Cavaleiro atendente | Filmes Douban | Base | Clique aqui |
| Cavaleiro atendente | Consulta de localização do KFC | JSON Practice | Clique aqui |
Analisando HTML e artigos regulares
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| Quasi-Knight | Obtenha falso | LXML Parsing | Clique aqui |
| Quasi-Knight | 4K Picture rastreando | LXML e resolva o problema de codificar erros | Clique aqui |
| Quasi-Knight | 58 | lxml e rastreamento de paginação | Clique aqui |
| Quasi-Knight | BS básicos | BS inicial | Clique aqui |
| Quasi-Knight | caso BS | Bs prático | Clique aqui |
| Quasi-Knight | XPath Basics | XPath inicial | Clique aqui |
| Quasi-Knight | xpath parsing | Pratique xpath | Clique aqui |
| Quasi-Knight | Básicos regulares | Regulamentação inicial | Clique aqui |
| Quasi-Knight | Exercícios regulares | Regras práticas | Clique aqui |
| Quasi-Knight | Retomar rastejando | O pequeno pequeno abrangente | Clique aqui |
Scrapy
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| O grande cavaleiro | Bossjob | Nível 1 Página rastejante, pode não estar disponível | Clique aqui |
| O grande cavaleiro | Bola de cor dupla | Todos são operações básicas de scrapy | Clique aqui |
| O grande cavaleiro | foto | Todos são operações básicas de scrapy | Clique aqui |
| O grande cavaleiro | Política do sol | Todos são operações básicas de scrapy | Clique aqui |
| O grande cavaleiro | Yi carros de carro rastejando | Com o JS reverso, é apenas o nível básico e a análise de dados JSON em larga escala | Clique aqui |
| O grande cavaleiro | Rede de beleza escolar | Todos são operações básicas de scrapy | Clique aqui |
| O grande cavaleiro | Notícias da NetEase | Todos são operações básicas de scrapy | Clique aqui |
| O grande cavaleiro | 17k romance rastreador | Todos são operações básicas de scrapy | Clique aqui |
Rastreador assíncrono de alto desempenho
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| Cavaleiro atendente | Conheça o frasco | Conhecimento básico | Clique aqui |
| cavaleiro | Fiscos básicos do pool | Conhecimento básico | Clique aqui |
| O grande cavaleiro | Meinv imagem em lote de rastreamento | Base | Clique aqui |
| O grande cavaleiro | Celebrity Picture rastreando | Base | Clique aqui |
| O grande cavaleiro | Coroutina multitarefa | Base | Clique aqui |
| O grande cavaleiro | Aplicativo do pool de threads | Base | Clique aqui |
Feapder
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| O cavaleiro do corvo | Coleta de dados Xiaohongshu | Use o modo de ar para personalizar o pipeline de armazenamento CSV. No futuro, mais modos serão reescritos e mais funções serão adicionadas. Também precisamos adicionar informações adicionais. | Clique aqui |
Automação
selênio
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| Cavaleiro atendente | Operação automática básica | Operação básica de automação | Clique aqui |
| Cavaleiro atendente | Login de simulação | Pratique automação | Clique aqui |
| Cavaleiro atendente | Cadeia de ação e processamento IFREAM | Pratique automação | Clique aqui |
| Cavaleiro atendente | Navegador sem cabeça e anti-detecção | prática | Clique aqui |
| cavaleiro | 12306 Login de simulação | Principalmente indisponível | Clique aqui |
| cavaleiro | Damai.com | Principalmente indisponível | Clique aqui |
dramaturgo
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| cavaleiro | código postal | Consulte o código postal através do endereço, use o método de sincronização, incluindo operações de espera e selecionando tabelas diferentes de acordo com a situação e use pandas para operar em arquivos do Excel ao mesmo tempo | Clique aqui |
| O grande cavaleiro | Anti-arrastando usando o navegador local | Às vezes, detectamos ao usar a automação. Usamos navegadores locais para anti-arrastamento. Como é um navegador local, nosso status de sessão e status de cookie existem. Ou seja, acessamos diretamente o site em que conectamos, o que é muito mais conveniente e não exige que criemos o contexto do navegador. | Clique aqui |
| O cavaleiro da terra | Coletar informações | A dificuldade é que cada site possui estilos diferentes, todos os dados não são iguais e o número é grande. É difícil escrever regras regulares e também é difícil lidar com assíncrono. O armazém lista apenas 10 das páginas, o que exige que o escritor tenha um certo entendimento de regras regulares e dramaturgo assíncrono. | Clique aqui |
| O grande cavaleiro | Navegador anti-detecção | Crie um navegador anti-detecção através do arquivo JS de Daniu, que pode ignorar a maioria das detecções | Clique aqui |
| O cavaleiro da terra | Romance VIP QIDIAN RAWELLING | Ignorando as css anti-escalada dos romances VIP QIDIAN através de capturas de tela, os pontos de conhecimento usados são: caixas de posicionamento, capturas de tela, deslizamento, limites de processamento e fusão de capturas de tela. Esta solução não é a solução ideal, todos são bem -vindos para adicionar | Clique aqui |
Capítulo avançado
Caso abrangente
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| cavaleiro | Um certo site de poesia | Código de verificação Relacionado, Login e Solução de Código de Verificação de Imagem --- Ddddocring | Clique aqui |
| O grande cavaleiro | Rastreador de idiomas | Use a Internet para converter texto em idiomas, apoiar idiomas chineses, ingleses e coreanos | Clique aqui |
| O grande cavaleiro | B Estação abrangente | Verifique se o usuário gosta de você, puxe a lista de mensagens e puxe a lista semelhante | Clique aqui |
| O cavaleiro da terra | Um site de vídeo | Download de vídeo m3u8, resolva a situação com a chave e sem chave, m3u8 de nível básico e download multi-threaded | Clique aqui |
| O cavaleiro da terra | INS rastreador | Para extração de parâmetros de página e análise de arquivos JSON | Clique aqui |
| O cavaleiro da terra | Douyin Data Rast em todo o site | Incluindo download da imagem em vídeo, Rastreamento de comentários, informações do usuário rastreando ... Atualmente, algumas interfaces também começaram a detecção do XB. Se você precisar usar a interface detectada, precisará adicionar XB para obter os dados. Agora reintegra a assinatura. Você pode encontrar o arquivo JS para obter a assinatura no Github, colocá -lo no mesmo diretório do arquivo douyin e nomear -o xb.js. O UP fornece um repositório de código que é de código aberto no GitHub. O repositório está marcado no código e pode ser usado atualmente. | Clique aqui |
| O cavaleiro da terra | Dados Weibo rastejando pelo site | Incluindo os usuários de pesquisa, pesquisa de postagens, baixando comentários, baixando álbuns de usuários, página inicial do usuário, informações do usuário ... | Clique aqui |
| Nível desconhecido | Roda de réptil | Pessoalmente, o encapsulamento secundário de métodos de rastreador comumente usado é conveniente para o desenvolvimento posterior | Clique aqui |
JS Tópico reverso
Solicitar cabeçalho ou criptografia de dados de resposta
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| cavaleiro | Dados de Nenniu | Solicitar criptografia de cabeçalho, criptografia de corpo de resposta | Clique aqui |
| cavaleiro | Índice de entretenimento | Introdução básica | Clique aqui |
| cavaleiro | Dados yien | Criptografia corporal de resposta | Clique aqui |
| cavaleiro | De qualquer forma, verifique | Criptografia corporal de resposta | Clique aqui |
| O grande cavaleiro | FJS Transação Pública | Criptografia de parâmetro ofuscada | Clique aqui |
| O grande cavaleiro | A única arte | Código de execução de JS dinâmico | Clique aqui |
| O cavaleiro da terra | Um site de clima | Parâmetro dinâmico dinâmico dinâmico Anti-debug | Clique aqui |
| O cavaleiro da terra | Um site de futebol | Múltipla criptografia do corpo de solicitação, é difícil localizar o local criptografado | Clique aqui |
| O cavaleiro da terra | Música Wangyiyun | Implementar dados de rastreamento em todo o site | Clique aqui |
| O cavaleiro da terra | Transação pública GDS | Parâmetros confusos, você precisa encontrar locais | Clique aqui |
| O cavaleiro da terra | Uma certa tradução | Solicitar a resposta da resposta de criptografia não é difícil | Clique aqui |
| O cavaleiro da terra | Login na estação B | Senha criptografada da RSA, a terceira geração de cliques de texto pode ser selecionada e os cliques de texto podem ser encontrados na seção Código de verificação | Clique aqui |
webpack
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| O cavaleiro da terra | Minerais da China | Webpack básico, algoritmo de criptografia de versão padrão, simples, pode ser implementado de várias maneiras (NodeJs, Python e Decody) | Clique aqui |
Testes ambientais
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| O cavaleiro do corvo | Redbook | Detecção do ambiente XHS XS, você precisa colocar cookies e localização no arquivo | Clique aqui |
| O cavaleiro do corvo | Bossjob | __ZP_S ...__ Detecção do ambiente, JS é diferente a cada dia, você precisa compensar alguns ambientes e modificar JS, há uma detecção de módulos, etc. | Clique aqui |
| O cavaleiro do corvo | Estudos de Macho Man PERGUNTA 1 2023 | Modifique magicamente MD5 e AES para excluir alguns honeypots e reabastecer o ambiente do navegador | Clique aqui |
| O cavaleiro da terra | Parâmetros ele.me | Obtenha o parâmetro bx_et através do dramaturgo | Clique aqui |
| O cavaleiro do corvo | O parâmetro anti_content do PDD | Este não é um ambiente de reabastecimento, mas um algoritmo para dedução. A criptografia do PDD é provavelmente a mesma em sites diferentes, e os valores de alguns objetos são diferentes. As funções principais criptografadas são todas lógicas | Clique aqui |
| O cavaleiro da terra | Atualize os itens de recrutamento direto do chefe clique para desbloquear IP, então acabei de encontrar um online | Esta criptografia de trajetória de clique para seleção é a terceira geração de teste extremo | Atualizado no arquivo Boss |
Criptografia WASM
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| O cavaleiro do corvo | Uma certa companhia aérea | Conteúdo da operação de WASM Realização de criptografia e descriptografia Parâmetros do cabeçalho do cabeçalho Atualização de criptografia Sistema Alibaba V2 Detecção Alibaba System V3 Detecção (aquisição automática); portanto, todos os parâmetros de criptografia foram resolvidos | Clique aqui |
Detecção de impressões digitais do navegador
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| O cavaleiro da terra | Yi Jiubi | Primeiro, é o corpo de solicitação criptografado, seguido pela detecção de impressões digitais do TLS. Atualmente, a solicitação da página inicial é aprovada usando uma biblioteca de terceiros. | Clique aqui |
Código de verificação
Slider
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| O grande cavaleiro | Slider JD | Depois de obter a imagem, podemos usar o ddddocr para identificar o controle deslizante e, em seguida, gerar a trajetória e enviar a solicitação. A trajetória aqui é escrita pelo chefe. Primeiro, prepare uma referência, deslize -a manualmente da esquerda para a direita e depois uma trajetória trêmula e, em seguida, use duas trajetórias (não sei por que a trajetória que eu mesmo deslizei não passou, então usei diretamente a trajetória do chefe) | Clique aqui |
| O grande cavaleiro | Alibaba 226 | Este dramaturgo de atualização é relativamente simples de obter | Clique aqui |
| O grande cavaleiro | FEIGUA GETE SLIDER DE CÓDIGO DE VERIÇÃO | Este dramaturgo de atualização é relativamente simples de obter | Clique aqui |
Clique para escolher
| Marca de dificuldade | Nome do projeto | Reabastecer | Navegação rápida |
|---|
| O cavaleiro do corvo | A terceira geração de pontos para escolher | Solicitamos a interface para obter imagens em sequência de acordo com a ordem de solicitação e, depois de obter as informações da imagem, enviamos para a interface de identificação para obter as coordenadas selecionadas por pontos. Depois de obter as coordenadas, convertemos as coordenadas e a enviamos ao JS para gerar a trajetória. Depois de obter a trajetória, solicitamos a interface para obter o validador | Clique aqui |
História da estrela
patrocinador
Se você acha que este armazém é útil para você aprender rastreadores e direções reversas, você pode patrocinar o autor e pedir ao autor que tome uma xícara de chá de leite ~! !
(Seu apoio pode fazer o autor feliz o dia todo?)