[Sitio web Scrapy Five Minutes] [Noticias de la industria energética] Captura de datos en todo el sitio de la red nacional de la industria del carbón de combate real Scrapy

Introducción al sitio web de destino

La Red Nacional de la Industria del Carbón es el único portal web de la Asociación de la Industria del Carbón de China y el único sitio web de información que representa a la industria del carbón en el proyecto en línea del gobierno nacional. El sitio web proporciona todo tipo de servicios de información autorizados en la industria del carbón a empresas e instituciones del carbón y al público en tiempo real.
Inserte la descripción de la imagen aquí

Iniciar Scrapy

Preparación para la recopilación de datos

1. Para aquellos que no entienden la idea de rastrear rápidamente el sitio web en 5 minutos, primero veamos
[Scrapy 5 minutos en el sitio web] el conocimiento básico de todos los datos del sitio.

2. No entiendo la captura de datos, la administración comercial y la clasificación. Primero, mire
la preparación de datos y clasificación de destino del rastreador de [sitio web de Scrapy Five Minutes]

3. Para aquellos que no conocen la producción en masa de la plantilla Scrapy, primero deben verla (deben ver)
[Sitio web de Scrapy Five-Minutes] Plantilla general del marco del proyecto de captura de datos

Resultados de la recopilación de datos

1. Guarde capturas de pantalla en Excel
Inserte la descripción de la imagen aquí

Aplicación de plantilla

<Proyecto> archivo .py en Spider

1. Crea un proyecto de araña

scrapy genspider www_coalchina_org_cn " "

2. Organice
los estilos CSS de todo el sitio. Primero veamos los estilos CSS de la página. Los dos estilos están unificados en todo el sitio.

3. Modifique el contenido de www_cwestc_com.py

Aquí, se explican las áreas que necesitan ser modificadas, y otros lugares se refieren a la plantilla, y no se requiere modificación.

  • Alcance y descripción personalizada
    allowed_domains = []
    web_name = "国家煤炭工业网"
  • Agregar información de datos de rastreo
    start_menu = [
        # 行业新闻
        [
	        {
    
    "channel_name":"协会动态","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=60",},
			{
    
    "channel_name":"行业动态","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=12",},
			{
    
    "channel_name":"经济运行","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=20",},
			{
    
    "channel_name":"统计信息","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=67",},
			{
    
    "channel_name":"科技进步","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=168",},
			{
    
    "channel_name":"两化融合","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=407",},
			{
    
    "channel_name":"国际合作","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=44",},
			{
    
    "channel_name":"安全生产","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=40",},
			{
    
    "channel_name":"公文下载","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=61",},
			{
    
    "channel_name":"项目建设","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=42",},
			{
    
    "channel_name":"加工利用","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=43",},
			{
    
    "channel_name":"人才培养","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=47",},
			{
    
    "channel_name":"政策法规","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=39",},
			{
    
    "channel_name":"能源经济","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=22",},
			{
    
    "channel_name":"煤机装备","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=45",},
			{
    
    "channel_name":"价格指数","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=25",},
			{
    
    "channel_name":"文化体育","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=46",},
			{
    
    "channel_name":"会员之家","url":"http://www.coalchina.org.cn/index.php?m=content&c=index&a=lists&catid=420",},
        ]
    ]
  • Acabado de estilo

Hay tantos parseX como hay en la lista general de datos del sitio web y se agregan a

        parse_list = [
            self.parse1,  # 行业新闻
        ]
  • Título, enlace y página de portada
    Item_thumbImg no se utiliza porque no hay una imagen en la lista general de contenido del sitio web
    Inserte la descripción de la imagen aquí
        # 行业新闻 列表内容抓取
        Item_title = response.xpath('//div[@class="col-right"]/ul/li/a/text()').extract()  # 文章标题列表
        Item_url = response.xpath('//div[@class="col-right"]/ul/li/a/@href').extract()  # 文章链接列表

Archivo Parse_detail.py en Spider

1. Obtenga el contenido de la página de detalles

Modificar el estilo de rastreo de CSS de la página de detalles de datos de la lista
Inserte la descripción de la imagen aquí

    # 处理详情页带格式,这里整个页面进行抓取
    item['content'] = ""
    if 'class="content"' in response.text and len(None2Str(item['content'])) < 5:
        item['content'] = response.xpath('//div[@class="content"]').extract_first()

2. Instrucciones especiales

Los programadores de algunos sitios web están frenéticos hasta cierto punto, 10 páginas y estilos 9. Como es imposible para nosotros abrir todas las páginas y mirar el formato CSS de la página de detalles, existe una solución general.

  • Una vez capturado el contenido por primera vez, abra la base de datos MongoDB y ejecute el siguiente comando para filtrar los datos de la página que contienen el cuerpo. Estos son los datos que no se capturan de acuerdo con el estilo especificado, sino los datos de todas las páginas. que se capturan directamente.
db.你的表名.find({content:/body/})

Inserte la descripción de la imagen aquí

  • Abra cualquier bucle de enlace para procesar el contenido de la página de detalles hasta que el comando mongo no filtre el contenido.

Supongo que te gusta

Origin blog.csdn.net/qq_20288327/article/details/113740258
Recomendado
Clasificación