美文网首页
python学习之旅-第二周week2-3

python学习之旅-第二周week2-3

作者: 张旭东0514 | 来源:发表于2016-05-26 13:39 被阅读0次

week2-3作业
学习python的第二周 5.25号完成练习week2-3在爬取58手机号卖家信息中加入断点续传功能
要求如下图所示:

Paste_Image.png

想法:通过数据库新增一个‘状态字段’来表示这个链接是否有爬取过,初始设定为‘未爬取’,每次爬取后改变次字段状态为‘已爬取’

Paste_Image.png

代码部分:

def update_message(url):
    for message in phone_message_state.find({'连接':url}):
        data ={
            '_id':message['_id'],
            '标题':message['标题'],
            '连接':message['连接'],
            '状态':'已爬取',
        }
        phone_message_state.save(data)
    return

每当从链接中成功爬取一个卖家信息时,改变链接表中的状态值,在查询时根据这个字段做判读查询

for message in phone_message_state.find({'状态':'未爬取'}):
        print('爬取进度=' + str((phone_message_state.count({'状态': '已爬取'}) / phone_message_state.count({'状态': '未爬取'}))*100)+'%')
        #if判断排除几个选好网的推荐
        if  'http://bj.58.com/shoujihao/' in message['连接']:
            #print(message['连接'])
            get_phone_message(message['连接'])
        else:
            update_message(message['连接'])

运行效果如下:

Paste_Image.png

程序可随时停止并随时开启,保障了数据的完成性和不重复性
总结:
--通过练习掌握了一些mongodb的保存等功能修改
--第一次对表结构进行了优化

相关文章

  • python学习之旅-第二周week2-3

    week2-3作业学习python的第二周 5.25号完成练习week2-3在爬取58手机号卖家信息中加入断点续...

  • 2018-03-10

    Python第二周学习总结 导读:这是python学习的第二周,在第二周,学习了大量的python基础,其中有字符...

  • 封面

    python学习之旅

  • Python之旅-2

    前言: 本篇文章是《Python之旅》系列的第二篇,在上一篇文章中主要学习了:Python的中文编码、PYthon...

  • Python之旅(第二周)

    学习之旅的第二周在懵懂中完结,函数的“恶心”程度已经让一个小白晕了头,细细回味一下,函数是数学的一种提现,但是自己...

  • PYTHON学习之旅(一)

    PYTHON学习之旅(一) 文|一本正经胡说八道的猫 PYTHON自学之旅,为了更好的学习python,这几天使用...

  • python练习(2)

    python学习的第二周,这周学习继续学习python基础,主要是生成器、函数式编程、模块。部分练习如下: 下周将...

  • G177班2.0践行20180129~20180204第二周周检

    20180129~20180204第二周周检视 本周主要带大女儿参加少年领袖学院高校之旅课程学习,陪伴孩子一起学习...

  • Python网络爬虫与信息提取入门<6>

    Part 20 第二周内容导学 我们继续学习python网络爬虫与信息提取课程。上一周我们讲解了python的re...

  • python学习第二周

网友评论

      本文标题:python学习之旅-第二周week2-3

      本文链接:https://www.haomeiwen.com/subject/licxdttx.html