Strava

scrapy 常用命 令

原文:https://www.cnblogs.com/zengsf/p/10039106.html

 

终端命令

  1. 创建一个项目: scrapy startproject name
  2. 利用蜘蛛名创建一个py文件: scrapy genspider name domain.name
  3. 在终端运行:scrapy shell url 得到response
  4. 利用蜘蛛名进行相对应的运行: scrapy crawl name
  5. 利用py文件进行运行: scrapy
  6. 将爬区下来的数据存储到csv文件: scrapy crawl name -o file.csv
  7. 将爬区下来的数据存储到JSON lines文件:scrapy crawl name -o file.jl
  8. 将爬区下来的数据存储到JSON文件:scrapy crawl name -o file.json

编写过程

  1. 先创建一个爬虫项目
  2. 将要爬去的目标在items.py文件中先定义好
  3. 然后在去spider中的py文件进行编写成程序
  4. 然后在去pipelines.py文件中进行数据的存储
  5. 要使用管道,那么就要开启管道,到settings.py文件中开始管道
  6. 在setting.py中设置为False就是不遵循robots.txt协议:ROBOTSTXT_OBEY = False
  7. 运行爬虫程序

提取数据

extract() : 获取选择器对象中的文本内容

  1. response.xpath('...') 得到选择器对象(节点所有内容) [<selector ...,data='<h1>...</h1>']
  2. response.xpath('.../text()') 得到选择器对象(节点文本) [<selector ...,data='文本内容'>]
  3. extract() : 把选择器对象中的文本取出来 ['文本内容']

如何将scrapy爬取到的数据存储到数据库

  1. mongo 启动mongoDB服务
  2. mongo 进入mongoDB shell
  3. 先到settings.py文件中的ITEM_PIPELINES下面设置MONGODB_HOST,MONGODB_PORT,
    MONGODB_DBNAME, MONGODB_SHEETNAME.
  4. 然后在传入一个USER_AGENT

scrapy爬取的数据快快速存储到本地

 

  1. scrapy crawl spider -o filename.json/csv  这样在终端里输入,定义你的文件格式与name

 

模拟登录

    1. headers 可以直接写在里面
    2. formdata 里面存放要登录的信息
posted @ 2020-09-02 16:35  cheflone  阅读(122)  评论(0编辑  收藏  举报