python爬虫-抓取acg12动漫壁纸排行设置为桌面壁纸
ACG-wallpaper
初学python,之前想抓取P站的一些图片来着,然后发现acg12这里有专门的壁纸榜单,就写了个抓取壁纸作为mac桌面壁纸玩玩。
功能:抓取acg12壁纸榜单的动漫壁纸,并定时随机设定为桌面壁纸
- v1: 暂时完成两个脚本并且分步执行;1、生成acg12文件夹并抓取定额壁纸到本地。2、读取壁纸文件夹,随机选择一张壁纸调用appleScript设置桌面壁纸。
spider.py
完成图片抓取功能,由于acg12中的url格式规律很好找,只需要找到图片存放的url规律就行,这里用urilib的那个下载函数失败了,就换成wirte直接写入文件了,并且用了多线程加快下载速度。因为线程之间没冲突,所以不需要用到异步锁。过程中学习了python的语法以及相关特性。
```python { .theme-legacy }
python
-- coding: utf-8 --
author amourjun
import os
import getpass
import random
import subprocess
file_dir = '/Volumes/work-1/platform/acg12'
print file_dir
file_dir = ''
file = []
for root, dirs, files in os.walk(file_dir):
for f in files:
file.append(f)
cnt = 0
for f in file:
print str(cnt) + '\t -- \t' + f
cnt = cnt + 1
file_name = file_dir + '/' + file[random.randint(0, len(file) - 1)]
SCRIPT = """/usr/bin/osascript<<END
tell application "Finder"
set desktop picture to POSIX file "%s"
end tell
END"""
def set_wallpaper(file_name):
subprocess.Popen(SCRIPT%file_name, shell = True)
set_wallpaper(file_name)
```
wallpaper-mac.py
将指定文件夹中的非目录文件加入file列表,通过随机函数随机选取壁纸文件,并通过调用applesScript脚本来设置mac壁纸。
这里暂时只实现了mac版本,后续进行兼容到windows版本,并且将整个项目打包。
```python { .theme-legacy }
python
-- coding: utf-8 --
author amourjun
import os
import getpass
import random
import subprocess
file_dir = '/Volumes/work-1/platform/acg12'
print file_dir
file_dir = ''
file = []
for root, dirs, files in os.walk(file_dir):
for f in files:
file.append(f)
cnt = 0
for f in file:
print str(cnt) + '\t -- \t' + f
cnt = cnt + 1
file_name = file_dir + '/' + file[random.randint(0, len(file) - 1)]
SCRIPT = """/usr/bin/osascript<<END
tell application "Finder"
set desktop picture to POSIX file "%s"
end tell
END"""
def set_wallpaper(file_name):
subprocess.Popen(SCRIPT%file_name, shell = True)
set_wallpaper(file_name)
```
python爬虫-抓取acg12动漫壁纸排行设置为桌面壁纸的更多相关文章
- python 爬虫抓取心得
quanwei9958 转自 python 爬虫抓取心得分享 urllib.quote('要编码的字符串') 如果你要在url请求里面放入中文,对相应的中文进行编码的话,可以用: urllib.quo ...
- Python爬虫----抓取豆瓣电影Top250
有了上次利用python爬虫抓取糗事百科的经验,这次自己动手写了个爬虫抓取豆瓣电影Top250的简要信息. 1.观察url 首先观察一下网址的结构 http://movie.douban.com/to ...
- Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储
Python爬虫可以说是好玩又好用了.现想利用Python爬取网页股票数据保存到本地csv数据文件中,同时想把股票数据保存到MySQL数据库中.需求有了,剩下的就是实现了. 在开始之前,保证已经安装好 ...
- python爬虫抓取哈尔滨天气信息(静态爬虫)
python 爬虫 爬取哈尔滨天气信息 - http://www.weather.com.cn/weather/101050101.shtml 环境: windows7 python3.4(pip i ...
- Python爬虫 -- 抓取电影天堂8分以上电影
看了几天的python语法,还是应该写个东西练练手.刚好假期里面看电影,找不到很好的影片,于是有个想法,何不搞个爬虫把电影天堂里面8分以上的电影爬出来.做完花了两三个小时,撸了这么一个程序.反正蛮简单 ...
- Python 爬虫: 抓取花瓣网图片
接触Python也好长时间了,一直没什么机会使用,没有机会那就自己创造机会!呐,就先从爬虫开始吧,抓点美女图片下来. 废话不多说了,讲讲我是怎么做的. 1. 分析网站 想要下载图片,只要知道图片的地址 ...
- python爬虫 抓取一个网站的所有网址链接
sklearn实战-乳腺癌细胞数据挖掘 https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campai ...
- Python爬虫抓取某音乐网站MP3(下载歌曲、存入Sqlite)
最近右胳膊受伤,打了石膏在家休息.为了实现之前的想法,就用左手打字.写代码,查资料完成了这个资源小爬虫.网页爬虫, 最主要的是协议分析(必须要弄清楚自己的目的),另外就是要考虑对爬取的数据归类,存储. ...
- Python爬虫--抓取糗事百科段子
今天使用python爬虫实现了自动抓取糗事百科的段子,因为糗事百科不需要登录,抓取比较简单.程序每按一次回车输出一条段子,代码参考了 http://cuiqingcai.com/990.html 但该 ...
随机推荐
- amd和cmd区别
作者:玉伯 链接:https://www.zhihu.com/question/20351507/answer/14859415 来源:知乎 著作权归作者所有,转载请联系作者获得授权. AMD 是 R ...
- Maven的下载和安装
1. Maven作用: 管理项目和jar包 2. jdk环境要求: maven3.3+需要jdk1.7以上的版本 3. 下载地址: http://maven.apache.org/download.c ...
- Head First 设计模式 第5章 单例模式
第5章 单例模式 1.定义:确保一个类只有一个实例,并为其创建访问点. 2.单例模式的类图: 对应的单例模式的代码: package com.ek.singleton; /** * @包名 com.e ...
- 移动Web学习笔记(第1天)-bootstrap框架的使用
移动web前言 移动web : 移动端手机浏览器或者微信里面浏览的网页 移动APP : 手机上需要下载安装的应用程序 1. 移动web介绍 1.1 3 天 响应式开发 一套代码运行多个终端 优点:开发 ...
- 身在魔都的她,该不该继续"坚持"前端开发?
一 这个女孩儿,是我很好很好很好的一位朋友,也是中学的同学,去年从她的本科大学毕业,毕业后由于没找到合适的工作而选择去培训机构培训了比较火爆的前端开发,之后去了上海找工作,但是由于一些原因在从上一家公 ...
- Java入门——(5)Java API
关键词:String类.StringBuffer类.System类.Math类.Random类.Date类.Calendar类.DateFormat类 API (Application Pro ...
- 位图索引(Bitmap Index)的故事
您如果熟悉Oracle数据库,我想您对Thomas Kyte的大名一定不会陌生.Tomas主持的asktom.oracle.com网站享誉Oracle界数十年,绝非幸致.最近在图书馆借到这位Oracl ...
- .Net,Dll扫盲篇,如何在VS中调试已经编译好的dll?
什么是Dll? DLL 是一个包含可由多个程序同时使用的代码和数据的库. 例如,在 Windows 操作系统中,Comdlg32 DLL 执行与对话框有关的常见函数.因此,每个程序都可以使用该Dll中 ...
- 简单实体类和xml文件的相互转换
最近写一个题目,要求将一组员工实体类转换成xml文件,或将xml文件转换成一组实体类.题目不难,但写完感觉可以利用泛型和反射将任意一个实体类和xml文件进行转换.于是今天下午立马动手 试了下,做了个简 ...
- 一个基于JRTPLIB的轻量级RTSP客户端——myRTSPClient详解
myRTSPClient是一个轻量级的RTSP客户端C++函数库. 支持多平台,支持H264,H265,MPA等音视频传输. 免费开源,接口易用,配套教程与代码解析(本博客). 适合RTSP入门学习. ...