2018.2.28

今天学习了用scrapy爬虫,爬去股票数据其中
class BaidustocksPipeline(object):
    def process_item(self, item, spider):
        return item
 
class BaidustocksInfoPipeline(object):
    def open_spider(self, spider):
        self.f = open('BaiduStockInfo.txt', 'w')
 
    def close_spider(self, spider):
        self.f.close()
 
    def process_item(self, item, spider):
        try:
            line = str(dict(item)) + '\n'
            self.f.write(line)
        except:
            pass
        return item

这个方法的定义,让我再去看了一遍面向对象和面向过程,简单的来说就是python他能定义一个方法class,然后能让程序来调用这个方法,从而实现简化。

同时理解了self这个类的实例,简单的理解就是他是一个虚拟的实例,让程序明白self是一个待定的实例值,以便于实现函数的正常调用。

class User(object): 
  def __init__(self,name,age): 
    self.name = name 
    self.age = age 
  
  def SetName(self,name): 
    self.name = name 
  
  def SetAge(self,age): 
    self.age = age 
  
  def GetName(self): 
    return self.name 
  
  def GetAge(self): 
    return self.age 
  
u = User('TYT',17) 
print u.GetName() 
print u.GetAge() 
上面的程序很好的定义了一个类。

同时理解切片。

alist = ['123', 'abc', 'good', 'hello', 'nice']  
>>> alist1 = alist[:]     #[:]分号左边表示0开始,右边表示0结束但是!!!不包括0
>>> alist1       #成功将alist列表复制给了alist1
['123', 'abc', 'good', 'hello', 'nice']
不太明白的是为什么不能直接alist1=alist,用处不是一样的吗

本人对scrapy认识就是免去了很多步骤,给特定程序去执行。自己编写spider一个提取页面之中你所需要的信息,同时出现一个简单的搜索工具css,然后去定义pipelinesemsline    ,不太明白的就是难道计算机程序他能自动识别open_spider    close_spider 还有process_item并且理解这几个函数所干的工作,因为我没有在spider中看到对类class的调用还有函数的调用。看来是对scrapy还不够清楚还要多看看资料理解。scrapy最后面一定要记得去改setting,不然scrapy无法识别你写得class。

然后生成器的理解。这里就不一一叙述。然后需要多多看看python的基本语法。才能熟练的使用python去完成想做的东西。

刚学编程,分享自己的想法,可能叙述的比较乱,希望大家多多包涵,看到错误和我的疑惑请帮我指出。谢谢

ps:我的台式是win7 python32位今天装scrapy 出现了各种问题,经过上网查资料终于解决。如果cmd告诉缺乏无法安装scrapy的原因是缺少vs2017并且要你去微软网站安装vs。因为vs实在太大,所以有种简单的方法。利用安装wheel,然后安装scrpay的编译文件和twisted的编译文件即可解决,具体的话在另外一篇文章。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值