python在文本添加超链接_在Markdown中快速插入超链接的Workflow

8cb409327f01

会用Markdown的同学都知道在Markdown中插入超链接的语法是:

[超链接文字](url)

要插入一个超链接我们需要敲四次按键,复制粘贴链接标题和URL,不是很爽啊。

用知乎的富文本编辑器插入超链接时,只需要在输入框里粘贴URL,编辑器会自动获取这个URL的标题,生成一个超链接,这个就超赞了呢。:D

为了更好地偷懒,今天花了点时间用Python写了个workflow解决这个问题。

最短路径:

1.CTRL+C复制URL,

2.workflow快捷键生成超链文本,

3.CTRL+V粘贴 [首页-简书](http://www.jianshu.com)这样的文本到Markdown编辑器。

问题的关键:

需要获取到URL页面里的

标签里的内容,再拼接成markdown超链接。

本来想用bash里的curl、grep、sed完成获取页面、匹配title、再拼接的,毕竟不太擅长,就索性用Python写了。

效果图:

8cb409327f01

8cb409327f01

制作方法:

8cb409327f01

Workflow结构

8cb409327f01

热键获取剪贴板内容

8cb409327f01

Python获取文章标题

8cb409327f01

判断成功或失败

8cb409327f01

设置通知文本

代码很简陋,将就看看。。。

import re,sys,urllib2

reload(sys)

sys.setdefaultencoding('utf-8')

def main():

query = "{query}"

regex_url = re.compile('[a-zA-z]+://[^\s]*')

if regex_url.search(query) == None:

query = 'error'

else:

try:

response = urllib2.urlopen(query)

webpage = response.read()

regex_title = re.compile('(.*

)(.*)()')

article_title = regex_title.search(webpage).group(2)

if article_title is not None:

markdownLink = '[{title}]({url})'.format(title=article_title, url=query)

query = markdownLink

except:

query = 'error'

sys.stdout.write(query)

if __name__ == '__main__':

main()

目前还有一些缺陷:

1.可能对Https支持不太好;

2.也许文章的标题会有乱码的情况。

如果觉得有用,您就点个红心咯~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值