一、scrapy 实验  爬中国人寿新闻,保存为xml

如需转发,请注明出处:小婷儿的python  https://www.cnblogs.com/xxtalhr/p/10517297.html

链接:https://pan.baidu.com/s/1HeIbBuAWjk8uNRl7ZIXh-A
提取码:z3hh

1.1 代码结构

scrapy框架具体内容,请参考

1、scrapy(一)scrapy 安装问题   https://www.cnblogs.com/xxtalhr/p/9170437.html

2、Scrapy 框架(二)数据的持久化   https://www.cnblogs.com/xxtalhr/p/9164186.html

3、scrapy (三)各部分意义及框架示意图详解   https://www.cnblogs.com/xxtalhr/p/9170343.html

4、scrapy (四)基本配置   https://www.cnblogs.com/xxtalhr/p/9169484.html

5、scrapy shell   https://www.cnblogs.com/xxtalhr/p/9158651.html

1.2 书写 spiders

 # -*- coding: utf-8 -*-
import scrapy
import json class RrSpider(scrapy.Spider):
name = 'rr'
allowed_domains = ['www.chinalife.com.cn']
start_urls = ['https://www.chinalife.com.cn/chinalife/xwzx/gsxw/7934bcc5-%d.html' % (i) for i in range(1, 12)] def parse(self, response):
news = response.xpath('//div[@class="easysite-article-content"]/ul/li')
print('========================================', len(news))
items = []
fp = open('./xml-4.xml', 'a', encoding='utf-8')#打开文件,不用手动创建
for new in news:
new_date = new.xpath('./span/text()').extract()[0]
new_title = new.xpath('.//div/span/a/@title').extract_first()
new_info = new.xpath('.//div/a/span/text()').extract_first()
new_link = 'https://www.chinalife.com.cn/' + new.xpath('.//div/span/a/@href').extract_first()
item = {}
item['date'] = new_date
item['title'] = new_title
item['info'] = new_info
item['link'] = new_link fp.write(json.dumps(item))#写入文件 items.append(item)
print('+++++++++++++++++++++++++++++++', new_date, new_info, new_link, new_title,)
fp.close()
return items

二、修改 setting中 USER_AGENT 和 ROBOTSTXT_OBEY

三、   终端  执行命令

scrapy crawl rr -o renshou.xml

# ('json', 'jsonlines', 'jl', 'csv', 'xml', 'marshal', 'pickle')

欢迎关注小婷儿的博客:

  csdn:https://blog.csdn.net/u010986753

  博客园:http://www.cnblogs.com/xxtalhr/

  有问题请在博客下留言或加作者微信:tinghai87605025 或 QQ :87605025

  python QQ交流群:py_data 483766429

  OCP培训说明连接:https://mp.weixin.qq.com/s/2cymJ4xiBPtTaHu16HkiuA

  OCM培训说明连接:https://mp.weixin.qq.com/s/7-R6Cz8RcJKduVv6YlAxJA

  小婷儿的python正在成长中,其中还有很多不足之处,随着学习和工作的深入,会对以往的博客内容逐步改进和完善哒。

重要的事多做几遍。。。。。。

scrapy实验1 爬取中国人寿官网新闻,保存为xml的更多相关文章

  1. 爬虫之爬取斗鱼官网LOL部分主播的状态

    一个爬虫小程序 爬取主播的排名及观看人数 import re import requests import request class Spider(): url = 'https://www.dou ...

  2. 实战爬取Plati官网游戏实时最低价格-Python

    需要修改url中的id_r="这个",这个id需要从Battlefield V (plati.ru)中获取,其实也是这个链接中的#s24235. 配合了e-mail推送,其实这个e ...

  3. Scrapy实战篇(一)之爬取链家网成交房源数据(上)

    今天,我们就以链家网南京地区为例,来学习爬取链家网的成交房源数据. 这里推荐使用火狐浏览器,并且安装firebug和firepath两款插件,你会发现,这两款插件会给我们后续的数据提取带来很大的方便. ...

  4. Python Scrapy 爬取煎蛋网妹子图实例(一)

    前面介绍了爬虫框架的一个实例,那个比较简单,这里在介绍一个实例 爬取 煎蛋网 妹子图,遗憾的是 上周煎蛋网还有妹子图了,但是这周妹子图变成了 随手拍, 不过没关系,我们爬图的目的是为了加强实战应用,管 ...

  5. Python的scrapy之爬取顶点小说网的所有小说

    闲来无事用Python的scrapy框架练练手,爬取顶点小说网的所有小说的详细信息. 看一下网页的构造: tr标签里面的 td 使我们所要爬取的信息 下面是我们要爬取的二级页面 小说的简介信息: 下面 ...

  6. 使用 Scrapy 爬取去哪儿网景区信息

    Scrapy 是一个使用 Python 语言开发,为了爬取网站数据,提取结构性数据而编写的应用框架,它用途广泛,比如:数据挖掘.监测和自动化测试.安装使用终端命令 pip install Scrapy ...

  7. 爬取西刺网的免费IP

    在写爬虫时,经常需要切换IP,所以很有必要自已在数据维护库中维护一个IP池,这样,就可以在需用的时候随机切换IP,我的方法是爬取西刺网的免费IP,存入数据库中,然后在scrapy 工程中加入tools ...

  8. python爬虫基础应用----爬取校花网视频

    一.爬虫简单介绍 爬虫是什么? 爬虫是首先使用模拟浏览器访问网站获取数据,然后通过解析过滤获得有价值的信息,最后保存到到自己库中的程序. 爬虫程序包括哪些模块? python中的爬虫程序主要包括,re ...

  9. selenium爬取煎蛋网

    selenium爬取煎蛋网 直接上代码 from selenium import webdriver from selenium.webdriver.support.ui import WebDriv ...

随机推荐

  1. Linux下编译、链接和装载

    ——<程序员的自我修养>读书笔记 编译过程 在Linux下使用GCC将源码编译成可执行文件的过程可以分解为4个步骤,分别是预处理(Prepressing).编译(Compilation). ...

  2. CSS总结div中的内容垂直居中的五种方法

    一.行高(line-height)法 如果要垂直居中的只有一行或几个文字,那它的制作最为简单,只要让文字的行高和容器的高度相同即可,比如: p { height:30px; line-height:3 ...

  3. ActiveReports公开课开启报名,学习如何解决中国式复杂报表难题

    ActiveReports实战教学 90分钟解决中国式复杂报表六大需求 [开课时间]4月19日 [主讲老师]葡萄城资深报表专家 [培训方式]网络在线公开课 报名地址

  4. Linux 学习笔记之超详细基础linux命令 Part 13

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 12---------------- ...

  5. 最新安全狗 apache v4.0 sql注入 bypass

    前言 最近没事学习一下 waf 的 bypass , 本文介绍下 bypass 安全狗的笔记.个人感觉 bypass 的总思路(正则匹配型 waf)就是利用各种语法特性来逃避正则(当然要保证语法正确性 ...

  6. SpringMVC的启动

    Spring MVC中的Servlet Spring MVC中Servlet一共有三个层次,分别是HttpServletBean.FrameworkServlet和DispatcherServlet. ...

  7. mybatis学习系列五--插件及类型处理器

    2 插件编写(80-81) 单个插件编写 2.1实现interceptor接口(ibatis) invocation.proceed()方法执行必须要有,否则不会无法实现拦截作用 2.2 使用@int ...

  8. Appium初识

    一. Appium工作原理 基本工作流程如下: Appium提供了一套web服务,Appium起一个Server(4723端口),用于与脚本client通信. server接收web driver(即 ...

  9. MSSQL清理所有用户数据库日志(SQLSERVER2008)

    USE [master]; SET NOCOUNT ON; )=''; )=''; DECLARE @clearSql VARCHAR(MAX)=''; ; ,),TMP_WHILE_FLAG, T. ...

  10. Asp.Net WebApi Get请求整理(一)

    Asp.Net WebApi+JQuery Ajax的Get请求整理 一.总结 1.Asp.Net WebApi默认不支持Get请求,需要在Action方法上指定[HttpGet], 除非Action ...