使用前提
- 使用Jupyter botebook
- 已经安装Jupyter notebook extensions 扩展插件
关于安装extensions 扩展插件的教程很多,这里不进行过多介绍,成功安装后,打开notebook有Nbextensions
选项卡
步骤
- 在
Nbextensions
选项卡下找到名称为Snippets
的插件,并打钩,注意,不是Snippets Menu;
- 新建并打开一个python3文件,我们可以看到窗口多了一个
Snippets
的下拉框。
3. 将以下代码复制到notebook的单元格,并运行;
import json
path = get_ipython().getoutput('jupyter --data-dir')
path = "".join([path[0], r"/nbextensions/snippets/snippets.json"])
snips = {
"name": "爬虫_requests",
"code": [
'def getHTMLText(url):',
'\ttry:',
'\t\tr = requests.get(url, timeout=30)',
'\t\tr.raise_for_status()',
'\t\tr.encoding = r.apparent_encoding',
'\treturn r.text',
'\texcept:'
'\t\treturn ""'
]
}
fr = open(path, 'r', encoding='UTF-8')
mode = json.load(fr)
fr.close()
for i in range(0, len(mode['snippets'])):
if mode['snippets'][i]['name'] == '爬虫_requests':
del mode['snippets'][i]
break
mode['snippets'].append(snips)
jsObj = json.dumps(mode)
with open(path, "w") as fw:
fw.write(jsObj)
fw.close()
- 关闭notebook,重新打开,打开任意文件,再次点开
Snippets
下拉框,我们发现多了一个爬虫_requests的选项,点击它,即插入了一段代码。
- 事实上以上代码的功能就是:将我们需要复用的一段代码命名为爬虫_requests,并且添加到
Snippets
里面,我们下次需要用的时候,直接在下拉框找到,并且点击即可插入。