专栏首页python学习教程python爬虫学习,爬取豆瓣各分类书单

python爬虫学习,爬取豆瓣各分类书单

点击蓝字“python教程”关注我们哟!

代码展示:

pachon2.5.py      
# -- coding: utf-8 --
import urllib
import urllib2
import re
import sys

reload(sys)

sys.setdefaultencoding('utf-8')

class book:     #豆瓣书籍的类
    def init(self, types, page):
        self.baseUrl = 'http://www.douban.com/tag/'
        self.types = types
        self.filename = 'doubanbook.txt'
        self.page = page
def getContents(self): #爬取源代码
    try:
        #if self.page == 0:
        url = self.baseUrl + self.types + '/book'
        #else:
        #   url = self.baseUrl + self.types + '/book?start=' + str(self.page)
        user_agent = 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.65 Safari/537.36'
        headers = { 'User-Agent' : user_agent}
        request = urllib2.Request(url,headers = headers)
        response = urllib2.urlopen(request)
        content = response.read()  #.decode('utf-8')
        pattern = re.compile('<a href=.*?class="title".*?target="_blank">(.*?)</a>.*?>(.*?)</div>',re.S)
        items = re.findall(pattern,content)
        return items
    except urllib2.URLError, e:
        if hasattr(e, "reason"):
            print u"豆瓣链接错误,错误原因", e.reason
            return None

def writetext(self, items): #写入txt
    for item in items:
        print item[0],item[1]
        files = open(self.filename,'a')
        files.write(item[0])
        files.write(item[1])
        files.write('\n')
        files.close()

def strat(self): #启动函数
    self.writetext(self.getContents())
    print u"""出现乱码为正常现象,在与本脚本相同的文件夹下会多出一个,
    
    doubanbook.txt的文件里面有所爬书籍,如你把本脚本放在桌面,
文件便会出现在桌面"""
        print u"结束输入 'O' , 联系作者输入 'A'"
        end = raw_input('>')
        if end == 'A':
            print u"QQ邮箱:1021644861@qq.com"
            raw_input('>')
        else:
            print "over"

初学python会比较困难,但是只要坚定自己的信念,不轻易认输,敢于面对,成功迟早会笑脸相迎。

注意事项

01

对Python开发技术感兴趣的同学,欢迎加下方的交流群一起学习,相互讨论。

02

学习python过程中有不懂的可以加入我的python零基础系统学习交流秋秋qun:934109170,与你分享Python企业当下人才需求及怎么从零基础学习Python,和学习什么内容。相关学习视频资料、开发工具都有分享

好啦!文章就给看官们分享到这儿

最后,如果觉得有帮助,记得关注、转发、收藏哟

本文分享自微信公众号 - python教程(pythonjc),作者:小雨

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-07-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 手把手教你用Python开发“剪刀石头布”小游戏【附源码】

    最近在学习PyQt5可视化界面,这是一个内容非常丰富的gui库,相对于tkinter库,功能更加强大,界面更加美观,操作也不难。于是我开始小试牛刀,用PyQt...

    python学习教程
  • Python爬虫学习之爬取百度贴吧资源

    python学习教程
  • python爬虫教程:批量抓取 QQ 群信息

    本文讲解Python批量抓取 QQ 群信息,包括群名称、群号、群人数、群主、地域、分类、标签、群简介等内容,返回 XLS / CSV / JSON 结果文件。

    python学习教程
  • Loxodon.Framework.XLua

    Loxodon.Framework.XLua 是一个XLua的开源的MVVM框架,它做为Unity3D的MVVM框架Loxodon.Framework的插件来使...

    Loxodon Studio
  • Python GUI项目实战(一)登录窗体的设计与实现

    前面我们学习了Python GUI 图型化界面Tkinter的基础知识,为了检测我们的学习成果,学以致用。我们从今天开始做一个综合Tkinter案例--基于Tk...

    小雨编程
  • python自学成才之路 类详细用法

    python是一门面向对象编程的语言,python的类和java中的类思想上有很多一样的地方,比如python类也是通过class修饰,里面也有成员属性,成员方...

    我是李超人
  • ReactiveCocoa,最受欢迎的iOS函数响应式编程库(2.5版),没有之一!

    简介 项目主页: ReactiveCocoa 实例下载: https://github.com/ios122/ios122 简评: 最受欢迎,最有价值的iOS响...

    ios122
  • PyQt5 字体/颜色/打印/打印预览对话框

    用户6021899
  • 小蛇学python(2)两百行代码实现旅游中国34座大城市最短路径

    直接说基础语法,也许大家不会感兴趣。前言之后的这一章,给大家介绍一下我最近写出来的一个小功能。用python语言实现GA算法来解决TSP问题,希望以此来激发大家...

    用户2145057
  • Leetcode 783. 二叉搜索树结点最小距离

    二叉搜索树属于有序树结构,一个可以利用的特点就是中序遍历可以得到有序数组,得到有序数组后遍历一次即可得到两节点最小差值。

    zhipingChen

扫码关注云+社区

领取腾讯云代金券