前言

一个喜欢折腾的人,长期看到桌面只有一种壁纸,就想着自己从网上爬取一些壁纸,存下来,随机切换壁纸。

本文仅供学习交流。

工具

Python3 + requests + re

Fiddler 抓包工具。

分析

必应官网好像无法使用 Ctrl + U 查看源代码和 Ctrl + Shift + I或者F12 打开控制台。

通过 Fiddler 进行抓包。

发现就这两个请求

那么可以肯定,图片的 url 肯定就在网页源代码里面。

我们可以在源代码中看到我们想要的图片 url

通过正则进行抓取即可。

import requests
import threading
import json
import re
from pprint import pprint
import timeclass Bing:def __init__(self):self.url = "https://bing.ioliu.cn/?p={}"self.headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36"}def parse_url(self, url):print("*" * 20)response = requests.get(url, headers=self.headers)return response.contentdef regular_img_name(self, img_url):ret = re.findall(r"http://h.\.ioliu.cn/bing/(.*?)\.(.*?)$", img_url, re.M | re.S)print(ret)return retdef download_imgs(self, img_list):for url in img_list:img = self.parse_url(url)time.sleep(1)print(url)strs = self.regular_img_name(url)with open("./bing/{}.{}".format(strs[0][0], strs[0][1]), "wb") as f:f.write(img)print("{} success".format(url))def regular_img_url(self, html_str):ret = re.findall(r".*?pic=(.*?)\?imageslim.*?", html_str, re.M | re.S)return retdef run(self):for i in range(1, 10):url = self.url.format(i)html_str = self.parse_url(url).decode()img_list = self.regular_img_url(html_str)print(img_list)self.download_imgs(img_list)if __name__ == "__main__":bing = Bing()bing.run()

可以改进为多线程爬虫版本~

注意:跑代码之前要在当前代码路径建立一个叫 bing 的文件夹~

总结

写完代码后发现:

必应壁纸好像提供了官方接口的~

http://cn.bing.com/HPImageArchive.aspx?idx=0&n=1

只要在解析出的 url 前面加上 http://www.bing.com 就好了。

网络爬虫的代码不一定一直可用, 代码要根据实际情况进行更改,不可一概论之!

利用Python爬取必应壁纸相关推荐

  1. python壁纸数据抓取软件_python应用:Python 爬取必应壁纸

    Python是一种解释型脚本语言,可以应用于以下领域: web和Internet开发 科学计算和统计 人工智能 教育 桌面界面开发 软件开发 后端开发 网络爬虫 import re import os ...

  2. Python 爬取必应(壁纸+搜索词)

    爬取必应壁纸 经常使用必应应该可以发现,其主页每天都会更新一张图片,这些图片很好看,希望每天能够下载收藏每张图片.具体请看这个网站:必应每日高清壁纸(https://bing.ioliu.cn/) 效 ...

  3. 用Python爬取手机壁纸,太简单了吧

    用Python爬取手机壁纸,太简单了吧! 人生苦短,快学Python! 在Python爬虫的学习过程中,爬取图片几乎是每个初学者都练习过的项目,比如我们之前就分享过:如何用Python快速爬取小姐姐的 ...

  4. python 怎么爬桌软件数据_如何利用Python爬取并分析红岭创投的数据?

    第一步:爬取数据 通过 selenium + Firefox 的无头模式将需要的数据爬取出来,代码实现不在赘述,详细步骤可查看我的上一篇图文(如何利用Python爬取网易新闻), 由于 seleniu ...

  5. python 翻译库本地库_利用python爬取并翻译GEO数据库

    原标题:利用python爬取并翻译GEO数据库 GEO数据库是NCBI创建并维护的基因表达数据库,始于2000年,收录了世界各国研究机构提交的高通量基因表达数据,现芯片集数据量高达12万以上.想要从这 ...

  6. 利用python爬取东方财富网股吧评论并进行情感分析(一)

    利用python爬取东方财富网股吧评论(一) python-东方财富网贴吧文本数据爬取 分享一下写论文时爬数据用到的代码,有什么问题或者改善的建议的话小伙伴们一起评论区讨论.涉及内容在前人的研究基础之 ...

  7. python爬取股票信息_利用Python爬取网易上证所有股票数据(代码

    利用Python爬取网易上证所有股票数据(代码 发布时间:2018-04-14 17:30, 浏览次数:1261 , 标签: Python import urllib.request import r ...

  8. 利用python爬取豆瓣电影top250

    利用python爬取豆瓣电影top250: 注:本内容只是作为个人学习记录 1.业务分析 进入网页https://movie.douban.com/top250 可以看见每部电影都呈现在眼前,点击电影 ...

  9. 利用python爬取丁香医生上新型肺炎数据,并下载到本地,附带经纬度信息

    新增:国外疫情网站介绍 已更新:爬取国外疫情数据 已更新:新型肺炎历史数据下载 2020年3月27日补充: 制作了一个全球肺炎数据查询下载网站,效果如下: 访问地址:http://119.3.227. ...

最新文章

  1. usaco Preface Numbering 序言页码
  2. 字符串截取固定长度的方法
  3. 如何用TensorFlow在安卓设备上实现深度学习推断
  4. 一张图帮你记忆,Spring Boot 应用在启动阶段执行代码的几种方式
  5. MongoDB负载信息一目了然 阿里云HDM重磅发布MongoDB监控和诊断功
  6. 2020陕西高考全省理科最高分725、文科最高分700
  7. 开源项目:单行日历(CalendarView)
  8. kafka版本 不对问题
  9. selenium IE 浏览器驱动下载地方
  10. Oracle Study之--Oracle 11g RAC设置归档路径错误案例
  11. Java集合框架(一)
  12. 如何处理Docker错误消息:please add——insecure-registry 1
  13. IDEA 初次使用,记录心得
  14. resnet50代码_十余行代码完成迁移学习,百度PaddleHub实战解读
  15. python汇总json数据_python的json包位置及用法总结
  16. 2018数据可视分析挑战赛-二等奖作品及历年优秀作品
  17. Message Code 【27796】 Failed to connect to server 'hostname';port_ld': 'reason'.
  18. node 简繁体转换_简体繁体转换
  19. Python中格式化操作漂亮打印文件的读取和写入
  20. Linux系统下微信网页版无法登录问题(deepin-wine-for-ubuntu)

热门文章

  1. Microsoft Windows操作系统版本介绍
  2. 手机驱蚊软件测试工程师,手机驱蚊是否实用?编辑肉身亲做实测
  3. Java并发编程之LinkedTransferQueue阻塞队列详解
  4. 0.91寸 SSD1306 OLED介绍(一) --- 整体介绍/IIC时序介绍
  5. 2 宽度优先爬虫和带偏好的爬虫(2)
  6. 视频教程| 3D版切水果游戏开发实战3:切面填充
  7. uc浏览器和夸克浏览器哪个好
  8. 重磅炸弹即将推出,欢迎大家继续关注~
  9. 顺丰 丰桥接口 php版
  10. yum 安装oraclejdk_linux服务器上安装jdk的两种方法(yum+下载包)