最近开始使用扇贝背单词,需要将以前积累在有道单词本里的单词导入到扇贝中。然后,扇贝并没有提供生词导入功能,需要使用"批量添加功能"手动添加单词。而批量添加功能一次只能添加十个单词,近千个单词需要添加九十余次。于是想编写一个简单的脚本添加单词。 脚本需要完成的功能:
一、思路
- 解析有道单词本,将自己收藏的单词全部抓取下来;
- 模拟批量添加功能,将抓取的单词提交到扇贝上。
在解析"批量添加功能"时,发现网页使用Get方法提交一个包括单词和随机字符串的网址。比如
1
|
http: //www.shanbay.com/bdc/vocabulary/add/batch/?words=first&_=1399122494234
|
二、实现思路
-
解析单词本
1.1 登陆有道单词本,首先使用浏览器登陆,复制所有cookie出来,构建一个包含cookie的urllib2.opener,需要库urllib2;
1.2 提取一页中的单词,添加到一个集合(set)中,需要库re;
1.3 下一页,直到结束。
-
提交单词
2.1 同样方法构建一个扇贝网的opener;
2.2 使用api提交集合中的单词;
2.3 解析返回的json对象,显示提交失败的单词,需要库json。