为了爬取网站数据而编写的一款应用框架,出名,强大。所谓的框架其实就是一个集成了相应的功能且具有很强通用性的项目模板。(高性能的异步下载,解析,持久化……)
pip install 下载好的框架.whl
3.pip install pywin32
4.pip install scrapy
在工程目录下创建一个爬虫文件: cd 工程scrapy genspider 爬虫文件的名称 起始url对应的文件中编写爬虫程序来完成爬虫的相关操作配置文件的编写(settings) #USER_AGENT = 'redisPro (+http://www.yourdomain.com)'伪装UA USER_AGENT = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36' # Obey robots.txt rules ROBOTSTXT_OBEY = False # 取消robots协议 执行 scrapy crawl 爬虫文件名称
# -*- coding: utf-8 -*- import scrapy class FirstSpider(scrapy.Spider): # 爬虫文件的名称:通过爬虫文件的名称可以指定定位到某一个爬虫文件 name = 'first' #允许的域名:只能爬取指定域名下的页面数据 allowed_domains = ['www.qiushibaike.com'] #起始url:当前工程将要爬取的页面所对应的url start_urls = ['http://www.qiushibaike.com/'] # 解析方法:对获取的页面数据进行指定内容的解析 # response:根据起始url列表发起请求,请求成功后返回的响应对象 # 返回值:必须为迭代器或者为空 def parse(self, response): print(response) # 获取响应对象的页面数据 first.py
# Crawl responsibly by identifying yourself (and your website) on the user-agent USER_AGENT = 'firstblood (+http://www.yourdomain.com)' # 伪装UA #指定终端输出指定种类的日志信息 LOG_LEVEL = 'ERROR' LOG_FILE = 'log.txt' # 存储在指定文件中,不再在终端输出 # Obey robots.txt rules ROBOTSTXT_OBEY = False # 不遵从robots协议 配置文件中添加或修改设置如下
转载于:https://www.cnblogs.com/yuliangkaiyue/p/10025020.html
相关资源:JAVA上百实例源码以及开源项目