吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7417|回复: 53
收起左侧

[原创工具] Bing(必应)每日一图下载

  [复制链接]
jingmoshell 发表于 2021-7-18 11:53
Bing(必应)每日一图下载

灵感 & 说明 :
得益于一个偶然的浏览,发现有博主利用 php实现对必应每日一图的解析和获取,
于是利用python对其进行复现(虽然有可直接用的接口,而毕竟是别人的!😥),并添加一定的功能!

21/06/04 :初代版本 ,提供图片下载并可自定义设为壁纸.
21/07/06 : 期间太忙,后续使用中发现代码过于臃肿,控制窗口显示非必要信息过多,精简并添加对图片信息和链接文件的储存!




python源码(可自行增删功能,变量名过于随意海涵。。。)
有兴趣查看php版源码的:点击跳转

[Python] 纯文本查看 复制代码
# [url=home.php?mod=space&uid=267492]@file[/url]   : bing_lym.py
# [url=home.php?mod=space&uid=238618]@Time[/url]   : 2021/6/4 8:53

import re
import os
import win32api
import win32con
import win32gui
import requests

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.108 Safari/537.36'
}
''


def downloads_img(time_info, img_d_url, img_text):
    path = os.getcwd() + f'/{time_info}.jpg'
    with open(path, 'wb') as f:
        f.write(requests.get(img_d_url, headers=headers).content)

    path_ = os.getcwd() + f'/{time_info}.txt'
    with open(path_, 'w', encoding='utf-8') as f_:
        f_.write(img_text + '\n' + img_d_url)

    print("*-> 文件链接", img_d_url)
    print(f"*-> 文件  {time_info}.jpg --> 下载成功!")


def get_res_html():
    aspx_url = 'http://cn.bing.com/HPImageArchive.aspx?idx=0&n=1'
    img_html = requests.get(url=aspx_url, headers=headers).text
    # print(img_html)

    date_info = re.findall('<fullstartdate>(.*?)</fullstartdate>', img_html)[0]
    img_info = re.findall('<url>(.*?)</url>', img_html)[0]

    # 07_06 加入关于图片说明
    img_text = re.findall('<copyright>(.*?)</copyright>', img_html)[0]
    print(' date_info -> %s\n img_info  -> %s\n img_text  -> %s' % (date_info, img_info, img_text))

    return date_info, img_info, img_text


def setWallPaper(pic):
    # open register
    regKey = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER, "Control Panel\\Desktop", 0, win32con.KEY_SET_VALUE)
    win32api.RegSetValueEx(regKey, "WallpaperStyle", 0, win32con.REG_SZ, "2")
    win32api.RegSetValueEx(regKey, "TileWallpaper", 0, win32con.REG_SZ, "0")
    # refresh screen
    win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER, pic, win32con.SPIF_SENDWININICHANGE)


def img_main():
    bing_url = 'https://cn.bing.com'
    date_info, img_info, img_text = get_res_html()
    # 下载函数
    downloads_img(time_info=date_info, img_d_url=bing_url + img_info, img_text=img_text)
    # 绝对路径储存
    path = os.getcwd() + f'/{date_info}.jpg'
    # print(type(path), path)

    pd = input('> 更换壁纸? y/n :')
    if pd == "y":
        setWallPaper(pic=path)
    else:
        pass


if __name__ == '__main__':
    img_main()




程序图片:

程序界面

程序界面

运行目录

运行目录



成品可执行文件:https://jingmo.lanzoui.com/IDA7Ur2z33a


免费评分

参与人数 17吾爱币 +18 热心值 +15 收起 理由
mileshong + 1 + 1 谢谢@Thanks!
闻经获益 + 1 + 1 谢谢@Thanks!
q99 + 1 谢谢@Thanks!
LiuYi0526 + 1 + 1 用心讨论,共获提升!
qq6698 + 1 我很赞同!
kiant + 1 热心回复!
Lucky_momo + 1 我很赞同!
cnon + 1 + 1 我很赞同!
pbgz + 1 + 1 谢谢@Thanks!
白天疯 + 1 + 1 我很赞同!
Serif + 1 谢谢@Thanks!
抱薪风雪雾 + 1 + 1 谢谢@Thanks!
妹妹有话 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
wa88888888 + 1 谢谢@Thanks!
yanglinman + 1 谢谢@Thanks!
sgzdmsz + 1 + 1 我很赞同!
风之暇想 + 7 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

三滑稽甲苯 发表于 2021-7-18 12:46
本帖最后由 三滑稽甲苯 于 2021-7-18 12:49 编辑

我也写了一个
发现不用设置UA也可以用
[Python] 纯文本查看 复制代码
from requests import get
from re import search
from time import time, localtime

date = str(localtime(time())[:3])
base = 'https://cn.bing.com'
r = get('https://cn.bing.com/HPImageArchive.aspx?idx=0&n=1')
xml = r.text
img_url = base + search(r'<url>(.*)</url>', xml).groups()[0]
copyright_text = search(r'<copyright>(.*)</copyright>', xml).groups()[0]
copyright_url = base + search(r'<copyrightlink>(.*)</copyrightlink>', xml).groups()[0]
with open(f'每日一图{date}.jpg', 'wb') as f: f.write(get(img_url).content)
with open(f'每日一图copyright{date}.txt', 'w', encoding='utf-8') as f: f.write(copyright_text + '\n详情: ' + copyright_url)

免费评分

参与人数 1吾爱币 +1 收起 理由
马可solo + 1

查看全部评分

tyy2020 发表于 2021-7-18 12:17
imnotmc 发表于 2021-7-18 12:17
sgzdmsz 发表于 2021-7-18 12:19
感谢分享
三滑稽甲苯 发表于 2021-7-18 12:21
这个可以有
不依赖第三方接口就很nice
7fMeteor 发表于 2021-7-18 12:45
感谢分享
q281843250 发表于 2021-7-18 13:26
感谢分享
吾爱孟夫子 发表于 2021-7-18 13:51
厉害!厉害!
W1942 发表于 2021-7-18 13:54
mark,以前想要,后来有小红车之后就没怎么截过了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-26 22:38

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表