吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2777|回复: 16
收起左侧

[Python 转载] 知乎热榜生成图片

[复制链接]
dajing666 发表于 2021-3-24 00:10
本帖最后由 dajing666 于 2021-3-24 12:04 编辑

今天看见一个公众号发了知乎热榜的接口
突然想着生成图片每天推送给自己看看
参考https://mp.weixin.qq.com/s/G3RJF43-XRaClcDxXXooMA

本人是Python菜鸟,文字转图片代码百度找的,多行文字转换又卡半天555
下一步准备加上日期啥的 有想法的可以一起研究研究

import requests
import json
import pygame
import os
import pandas as pd
import re
from PIL import Image, ImageDraw, ImageFont
from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)#忽略证书警告
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0',}
url = "https://api.zhihu.com/topstory/hot-list?limit=10&reverse_order=0"
res = requests.get(url, headers=headers, verify=False)
res.encoding = 'utf-8'
s = json.loads(res.text)
列表=[]
list = s['data']
for i in list:
    title = i['target']['title']
    列表.append(title)
def 加序号(line):
    列表 = []
    for i in range(len(line)):
        dd="%s.%s" % (i + 1, line+"\n")
        列表.append(dd)
    return 列表
output_str="".join(加序号(列表))
print(output_str)

LINE_CHAR_COUNT = 50*2  # 每行字符数:30个中文字符(=60英文字符)
CHAR_SIZE = 30
d_font = ImageFont.truetype('C:/Windows/Fonts/simsun.ttc', CHAR_SIZE)
lines = len(列表)  # 计算行数

image = Image.new("L", (2000, 30*lines), "white")
draw_table = ImageDraw.Draw(im=image)
draw_table.text(xy=(0, 0), text=output_str, fill='#000000', font= d_font, spacing=4)  # spacing调节机制不清楚如何计算

image.show()  # 直接显示图片
image.save('1.png', 'PNG')  # 保存在当前路径下,格式为PNG
image.close()
微信图片_20210324000319.png

粘贴的代码不知道这里为啥会没了,重新上传个代码

粘贴的代码不知道这里为啥会没了,重新上传个代码

知乎热榜.rar

1.09 KB, 下载次数: 10, 下载积分: 吾爱币 -1 CB

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

shubiao05 发表于 2021-3-24 10:16
这个执行报错如下:

pygame 2.0.1 (SDL 2.0.14, Python 3.7.3)
Hello from the pygame community. https://www.pygame.org/contribute.html
Traceback (most recent call last):
  File "E:\py_files\Web\Zhihu\zhihu_hot_pic.py", line 26, in <module>
    output_str="".join(加序号(列表))
  File "E:\py_files\Web\Zhihu\zhihu_hot_pic.py", line 23, in 加序号
    dd="%s.%s" % (i + 1, line+"\n")
TypeError: can only concatenate list (not "str") to list
[Finished in 11.1s]
南归不NG 发表于 2021-3-24 08:50
exe文件
百度网盘链接:https://pan.baidu.com/s/1Ljnqr7Zxtp4Sno7VlqZUIQ  提取码:jh3j
其余网盘暂未上传
79935539 发表于 2021-3-24 06:17
xpmg 发表于 2021-3-24 06:40
能搞出来就是大佬!
Thekingdom 发表于 2021-3-24 07:20
就是说可以按标题找文章?
WUAIZHONGGUO 发表于 2021-3-24 07:52
能编译成exe分享下吗
坐久落花多 发表于 2021-3-24 08:22
感觉其中最有价值的就是知乎的接口?
https://api.zhihu.com/topstory/h ... amp;reverse_order=0
南归不NG 发表于 2021-3-24 08:28
dd="%s.%s" % (i + 1, line[i]+"\n")
东毒破罐子 发表于 2021-3-24 08:41
dd="%s.%s" % (i + 1, line[i]+"\n")
thjwuliubu 发表于 2021-3-24 08:50
顶一下。。。。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-25 17:57

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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