吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4569|回复: 8
收起左侧

[Python 转载] 爬取金山词霸每日一句并发音

[复制链接]
山野村夫-陈墨 发表于 2019-7-17 20:27
一.准备:
为什么选择金山词霸开放平台?是因为他“开放”,对的,他“”开放”,
他的首页就有json数据链接,避免了找URL的麻烦和提取数据的困难。顺便提一嘴,
他也在这告诉我们,他准备好了,就看你上不上了。
我先上了哈 .

二、开工:
         1.我们要完成的任务:
        
[Python] 纯文本查看 复制代码
if  __name__ =="__main__":
      #1.得到每日一句的英语和汉语
      content,note = get_msg()
      #2.保存每日一句的英语和汉语
      save(content,note)
      #3.通过win32com.client发音
      read(content, note)
      #4.完成
      print("保存完成!")
      code = input("按任意键结束!")

      2.1:得到每日一句英文和中文
[Python] 纯文本查看 复制代码
ef  get_msg():    url  = "http://open.iciba.com/dsapi/"
    res = requests.get(url)
    res.encoding = "utf-8"
  #得到的数据本身就是json数据,直接利用
    content = res.json()['content']
    note    = res.json()['note']
   #字符串太长,以句号为标志换行
    content = content.replace(". ",".\n")
    note = note.replace("。","。\n")

    print(content)
    print(note)
    return  content ,note

    2.2:保存到文件中:
   
[Python] 纯文本查看 复制代码
def  save (content,note):
    with open("每日一句.txt","a",encoding="utf-8") as  f:
        f.write(content)
        f.write("\n")
        f.write(note)
        f.write("\n\n\n")


   2.3:发音
  
[Python] 纯文本查看 复制代码
def read(conten,note):
    speaker = win32com.client.Dispatch("SAPI.SpVoice")
    speaker.Speak(content)
    speaker.Speak(note)
   #发音是逐句往下读,不需要考虑发生重音的现象

     
   3.打包程序:
    pyinstaller 操作。

   4.创建windows任务:
   打开计算机管理,创建基本任务,就可以按照设置要求每天自动运行程序

   
[Python] 纯文本查看 复制代码
import requestsimport json
#他的模块不是win32com, 而是pypiwin32
import win32com.client

def  get_msg():
    url  = "http://open.iciba.com/dsapi/"
    res = requests.get(url)
    res.encoding = "utf-8"

    content = res.json()['content']
    note    = res.json()['note']

    content = content.replace(". ",".\n")
    note = note.replace("。","。\n")

    print(content)
    print(note)
    return  content ,note

def  save (content,note):
    with open("每日一句.txt","a",encoding="utf-8") as  f:
        f.write(content)
        f.write("\n")
        f.write(note)
        f.write("\n\n\n")


def read(conten,note):
    speaker = win32com.client.Dispatch("SAPI.SpVoice")
    speaker.Speak(content)
    speaker.Speak(note)

if  __name__ =="__main__":
      #1.得到每日一句的英语和汉语
      content,note = get_msg()
      #2.保存每日一句的英语和汉语
      save(content,note)
      #3.通过win32com.client发音
      read(content, note)
      #4.完成
      print("保存完成!")
      code = input("按任意键结束!")


PS:如果室友天天打游戏!!!!!!!!

免费评分

参与人数 2吾爱币 +2 热心值 +2 收起 理由
天天404 + 1 + 1 用心讨论,共获提升!
nrmyh732 + 1 + 1 谢谢@Thanks!

查看全部评分

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

wish成真 发表于 2019-7-17 21:00
楼主厉害了,十分有用
zzjyat 发表于 2019-7-17 21:59
sizhubiao 发表于 2019-7-17 22:02
天天404 发表于 2019-7-18 10:24
思路不错,学习了
雷晨 发表于 2019-7-18 21:15
楼主你看一下http://mzsock.com/这个你能不能爬取
 楼主| 山野村夫-陈墨 发表于 2019-7-18 23:06
雷晨 发表于 2019-7-18 21:15
楼主你看一下http://mzsock.com/这个你能不能爬取

不爬,一大帮臭脚丫子和大白腿,爬它干什么?
Andy0532 发表于 2021-1-4 13:42
然而我啥都没懂
boell 发表于 2021-1-4 14:51
这个现在还能用吗?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-25 21:20

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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