前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >爬取豆瓣读书的详细步骤

爬取豆瓣读书的详细步骤

原创
作者头像
小白学大数据
发布2022-10-09 16:19:02
发布2022-10-09 16:19:02
92300
代码可运行
举报
文章被收录于专栏:python进阶学习python进阶学习
运行总次数:0
代码可运行

最近一个让我帮他爬爬取豆瓣图书的一些数据,恰好已经好久没有爬数据了,今天就重温下爬虫过程并分享出来大家参考讨论下,文中我把爬取的过程按照顺序写下来,主要是留个痕迹。在文中我会把爬取数据所需的所有代码也示例出来,如果你懒得自己敲的话,可以直接复制

步骤一:添加header信息。设置header信息,模拟成浏览器或者app欺骗反爬系统,避免418。这个header我是在网上找的,如果想设置自己浏览器的header信息,请自行百度,很简单。

步骤二:获取网页信息且解析网页,我爬取的是网页是:https://book.douban.com/

步骤三:分析网页的反爬机制,经常搞爬虫的都知道豆瓣的反爬比较严,这里我主要分析了网站的随机ua,cookie,和IP限制。刚好之前购买的亿牛云代理还没有过期,这里就详细的讲解下在爬虫程序里面添加IP的过程,详细的实现示例如下:

代码语言:javascript
代码运行次数:0
运行
复制
#! -*- encoding:utf-8 -*-

    import requests
    import random

    # 要访问的目标页面
    targetUrl = "http://httpbin.org/ip"

    # 要访问的目标HTTPS页面
    # targetUrl = "https://httpbin.org/ip"

    # 代理服务器(产品官网 www.16yun.cn)
    proxyHost = "t.16yun.cn"
    proxyPort = "31111"

    # 代理验证信息
    proxyUser = "username"
    proxyPass = "password"

    proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % {
        "host" : proxyHost,
        "port" : proxyPort,
        "user" : proxyUser,
        "pass" : proxyPass,
    }

    # 设置 http和https访问都是用HTTP代理
    proxies = {
        "http"  : proxyMeta,
        "https" : proxyMeta,
    }


    #  设置IP切换头
    tunnel = random.randint(1,10000)
    headers = {"Proxy-Tunnel": str(tunnel)}



    resp = requests.get(targetUrl, proxies=proxies, headers=headers)

    print resp.status_code
    print resp.text

步骤四:从爬虫程序中将数据一一对应的取出,并做后期的清洗,整理,分析操作后才能得到干净的数据。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档