Scrapy简单笔记(一)

Python内置函数 zip() 介绍

title_list = ['茶杯','茶几','沙发','筷子']
money_list = [ 34, 1008, 3200, 3]
result_list = zip(title_list, money_list)
for i,j in result_list:
    print(i,j)
茶杯 34
茶几 1008
沙发 3200
筷子 3
num_1 = [1,2,3,4]
num_2 = [5,6,7,8,9]
for i,j in zip(num_1, num_2):
    print(i,j)
1 5
2 6
3 7
4 8

对不同长度的列表使用zip函数,以最短的为例,在长列表中截取同短列表长度的数据,再做处理,zip()多个参数如下示例

demo1 = [1,2,3,4,5,6,7,8,9]
demo2 = [22,33,44,55,66]
demo3 = [100,200,300]
for i,j,k in zip(demo1, demo2, demo3):
    print(i,j,k)
1 22 100
2 33 200
3 44 300

Scrapy命令交互模式介绍

Scrapy命令交互模式启动

$ scrapy shell 网址[不需要引号]

命令交互模式中函数介绍

request对网址发起请求的请求信息

response网址服务器响应请求,发回的响应信息

view(response)调用系统自带浏览器,查看response中保存着从网址中获取的网页数据

fetch(url)在交互模式下,重新对一个url网址发送请求,自动更新到request和response中

Scrapy项目爬虫文件说明

  • init.py -> 保持默认,不需要做任何修改

  • items.py -> 自定义项目类的地方,也就是爬虫获取到数据之后,传入管道文件(pipelinies.py)的载体

  • pipelines.py -> 项目管道文件,对传入的项目类中的数据进行一个清理和入库

  • settings.py -> Scrapy项目的设置文件,例如下载延迟,项目管道文件中类的启用以及自定义中间件的启用和顺序

  • spiders目录 -> 里面只有一个init.py文件,在该目录下定义爬虫类并继承scrapy.Spider。

  • middlewares.py -> 中间件配置文件

Scrapy爬虫文件 ganji.py 介绍

name = "zufang":爬虫名字,如果项目中有多个爬虫,最好别重复了

start_urls = ['http://bj.ganji.com/fang1/chaoyang/']:爬虫启动后自动爬取的链接,列表内可以放多个链接

def parse(self, response)::爬虫启动时,爬取链接成功后自动回调的函数,默认parse,参数self和response也是必须的

response.xpath("xpath字符串").extract():固定格式,如果xpath(“”)里面不放任何字符串会报错,如果里面的字符串是/结尾,则代码会报错

Scrapy课程链接:http://study.163.com/course/courseMain.htm?courseId=1003666043

Python教程、教程–传送门

    原文作者:布拉豆
    原文地址: https://www.jianshu.com/p/870b66199eab
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞