arquitetura de projeto fragmentada
-project # projeto nome -project # com um nome do projeto, pasta -spiders # Spiders: deitado répteis réptil genspider gerados, que são colocados abaixo - __init__ .py -chouti.py # gaveta réptil -cnblogs.py # cnblogs réptil -items.py # semelhante arquivo models.py no Django, escrito dentro de um modelo de uma classe de -middlewares.py # middleware (répteis middleware, baixar middleware) middleware escrito neste -pipelines.py # write persistente local (persistiu em um arquivo, MySQL, Redis, MongoDB) -settings.py # perfil -scrapy.cfg # arquivos de configuração quando implantado na linha Scrapy
arquivo de configuração irregular
settings.py
# A conformidade com protocolos répteis, forçou correr ROBOTSTXT_OBEY = False # pedido cabeçalho USER_AGENT USER_AGENT = ' Mozilla / 5.0 (o Macintosh, a Intel do Mac OS X-10_14_6) AppleWebKit / 537,36 (KHTML, como o Gecko) o Chrome / 80.0.3987.149 Safari / 537,36 ' # assim configurado, o programa irá imprimir uma mensagem de erro, , log_level, = ' erro '
Arquivo de programa do rastreador
classe ChoutiSpider (scrapy.Spider): nome = ' chouti ' # , que é o nome único de cada esteira rolante, usado para diferenciar aranha allowed_domains = [ ' https://dig.chouti.com/ ' ] # permitem o rastreamento domínio start_urls = [ ' https://dig.chouti.com/ ' ] # iniciar o rastreamento de posição, um começo répteis, ele irá enviar primeiro pedido DEF o parse (Self, resposta): # analisar o objeto de resposta, a resposta Volte para executar automaticamente o analisador, faça a análise de impressão neste método ( ' --------------------------- ' , resposta)