专栏首页志学Python爬虫(110)一文使你成为终身斗图帝

爬虫(110)一文使你成为终身斗图帝

一文使你成为终身斗图帝,以后妈妈终于不用担心我没图跟别人斗图了,你说我秀不秀,这波操作实在是羡煞旁人啊,以后微信群斗图,就不用偷别人的图

下班闲来无聊,来一波斗图呗,同样我们进入斗图官网,

https://www.doutula.com/article/list

我们 f12 一下,并且刷新一下页面,可以看到以下 list

我们先把这个 user-agents 扒下来

header={
  'User-Agent': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.87 Safari/537.36",
}

我们随便点进去一张图,看到详情页,我们需要表情包的 title,页面链接如

https://www.doutula.com/article/detail/4531369

导入常用包

import random
import requests
from bs4 import BeautifulSoup
import urllib
import os

我们暂时就爬第一页和第二页

BASE_URL = 'https://www.doutula.com/photo/list/?page='
URL_LIST = []
for x in range(1, 2):
    REAL_URL = BASE_URL+str(x)
    URL_LIST.append(REAL_URL)

主要的爬虫代码

def get_url(url):
    my_headers = [
        "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36",
        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36",
        "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0",
        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/537.75.14",
        "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Win64; x64; Trident/6.0)",
    ]
    header = {
        "User-Agent": random.choice(my_headers)
    }
    re = requests.get(url, headers=header) # 获取DOM 文档
    soup = BeautifulSoup(re.content, "lxml") # 使用 lxml 解析内容
    IMG_LIST = soup.find_all('img', 'img-responsive lazy image_dta') # 找到图片所在位置
    num=1
    for img in IMG_LIST:
        imgurl = img['data-original']
        
        pic=requests.get(imgurl,headers=header).content
        with open('./doutufile/'+str(num)+'.jpg','wb')as f:
            f.write(pic)
            num=num+1

爬取成功了,给大家看看图吧

好了,祝贺你早日成为斗图

本文分享自微信公众号 - 志学Python(lijinwen1996329ken),作者:志学Python

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

原始发表时间:2020-05-09

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 带你认识 flask 用户登录

    在第四章中,用户模型设置了一个password_hash字段,到目前为止还没有被使用到。这个字段的目的是保存用户密码的哈希值,并用于验证用户在登录过程中输入的密...

    公众号---志学Python
  • webpack打包原理入门探究(五)loader初探(一)

    添加 webpack.app.config.js 文件, 配置 module, 用于加载 loader

    公众号---志学Python
  • 爬虫(107)Python 3.7的超酷新功能(接近一万字,请耐心享用,而且建议收藏)

    Python 3.7 正式发布!这个新的Python版本自2016年9月开始开发,现在我们所有人都可以享受核心开发人员辛勤工作的成果。

    公众号---志学Python
  • 前端面试题-url、href、src

    比如网址 http://segmentfault.com/html/...,必须遵守以下的语法规则:

    WEBING
  • SOFAJRaft—初次使用

    SOFAJRaft 是基于 Raft 算法的生产级高性能 Java 实现,支持 MULTI-RAFT-GROUP。应用场景有 Leader 选举、分布式锁服务、...

    luozhiyun
  • SOFAJRaft—初次使用

    SOFAJRaft 是基于 Raft 算法的生产级高性能 Java 实现,支持 MULTI-RAFT-GROUP。应用场景有 Leader 选举、分布式锁服务、...

    luozhiyun
  • R语言数据分析有意思的小例子:Prince的歌词挖掘 — 1

    Lyric Analysis with NLP & Machine Learning with R

    用户7010445
  • 【ES6基础】展开语法(Spread syntax)

    今天是元宵佳节,在此小编祝大家元宵佳节快乐!今天小编在这里给大家继续介绍ES6的语法糖——展开语法(Spread syntax)。

    前端达人
  • 【ES6基础】展开语法(Spread syntax)

    展开语法用"..."进行表示,展开语法将可迭代的对象拆分成独立的值(语法层面展开)。扩展语法通常用于将可迭代的对象的值传递到函数的参数中。今天小编将从以下方面进...

    前端达人
  • 动效案例:纯手工写一个滚动视差效果

    大家好,今天我们一起来实践一个滚动视差的动画效果。虽然我们不是设计师,不擅长PS、AE,但是我们完全可以通过前端技术设计一幅漂亮的画面,今天我们要设计一幅月下山...

    前端达人

扫码关注云+社区

领取腾讯云代金券