勤学思培训网LYMEZD
  • 总算晓得python爬虫入门实例

    在学习完Python的基础知识之后,有很多朋友为自己接下来要干什么感到迷茫。不知道应该通过什么样的项目来锻炼自己编程水平和思维能力。接下来我就给大家说几个适合Python的新手项目和练手项目,Python练手项目有哪些 跟我往下看。以下是小编为你整理的python爬虫入门实例

    Web方向的练手项目

    这个其实是肯定不用多少的了。Python的练手项目就是可以做一个网站了。我们可以做一个属于自己的博客。在做博客的时候,我们可以巩固的知识点是

    Html+CSS+JS的基础知识,以及熟练的运用Python的Web开发框架(例如Django或者Flask)做出一个属于自己的网站。


    [图片0]

    做一个网络数据抓取工具

    也就是我们常说的网络爬虫。可以找到一个自己喜欢的网站。试着抓取一些网站数据,在抓取数据的过程中,你会遇到例如 反抓取 需要登陆 验证码验证以及IP检测等多种问题。但这恰恰不就是提高的过程么。或许,你也可能写一个自己的“小百度”呢、

    做一个图像识别的项目

    不要觉得太难。我们可以从一个简单的项目开启。验证码就是一个图片。我们是不是可以试着识别一下验证码上面的文字?不要觉得麻烦,也不要觉得太过简单。所有复杂的事情都是从简单开始的。学习验证码识别对于我们写网络爬虫是不是特别有用呢?在后期深入的过程中,你还可以做一个图像识别软件。

    做一个Python聊天机器人

    是不是觉得现在手机软件中的智能聊天软件很神奇。你同样可以做一个属于自己的聊天机器人。前期我们可以做一个应答式的,也就是所有的会话就是存储在数据库中。后期的话可以学习人工智能学习。让你的机器人更加智能。

    指令的调用

    有的时候我们可以有其他的方法需要调用类中的信息,但是每次都执行一次就会感觉很繁琐 比如:

    def Print_score(std): print ('%s:%s'% ( ,))print Print_score(bat)

    上面我们可以看出通过定义成绩表我们调用到了学生的姓名和成绩,我们可以通过函数来访问这些数据。但是每个实例都有的话执行起来就要写很多的代码。我们可以通过封装的方式把类中需要的给直接封装在类中进行调用。

    好的 是这样,我们可以从外部直接调用类中的方法。相当于是封装了逻辑,直接在类的内部定义好了,调用会感觉比较容易。封装的另外一个好处,我们可以给Student这个类增加新的方法,比如get_grade:

    def get_grade(self): if > 90: return 'A' elif >= 60: return 'B' else: return 'C'

    python应用特性

    数据类型

    常用的数据类型:数字(number),字符串(string),list(数组),tuple(元组),dict(字典)

    数字(number)

    数字主要有:int(有符号整型),long(长整型),float(浮点数),complex(复数)

    var1 = 1(int)

    var2 = L(long)

    var3 = (float)

    var4 = 3e+26J(complex)

    字符串

    字符串是使用单引号或者双引号标识起来的,单引号或者双引号内部可以放数字、字母、下划线

    str1 = ""

    str2 = '我们都在学Python'


    [图片1]

    数组和元组

    List(列表)和Tuple(元组) 是 Python 中使用最频繁的数据类型。

    列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。

    列表用 [ ] 标识,是 python 最通用的复合数据类型。

    元组用()标识 , 内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。

    List(列表)和Tuple(元组) 区别:List是可变序列,Tuple是不可变序列

    说白了就是List增删改查都可以,但是tuple只能查看(不可变嘛)

    字典

    字典嘛,就是根据键(key)去查找值(value)

    分析目标网站内容进行爬虫

    在进行jiandan网站的测试时发现存在rebots包含导致无法进行图片下载,于是选择xiaohuar网进行图片爬虫下载

    1目标website: /hua/

    2图片的xpath: '//div[@class="img"]/a/img/@src'

    下一页的xpath: '//a[text()="下一页"]/@href'

    安装一下顺序编写代码:

    :spider code in refer to the following picture

    :define the items for the scrapy result

    : save the scrapy result

    : settings for scrapy

    运行爬虫,可以看到我们的爬虫正在工作,不断下载图片到本地

    run the scrapy:

    hxb@lion:~/PycharmProjects/meizhiSpider/meizhiSpider$ scrapy crawl jiandan1. image files were saved in the directory: /home/hxb/jiandan