文章目录
我的博客地址:https://hxd.red
原文链接:https://hxd.red/2019/08/06/python3-beautifulsoup4-html-190805/
我的微信公众号:不淡定的实验室(hxdred)
遇到的问题
在制作第三个微信小程序“法语背单词记忆小助手”时,我需要处理大量单词有关的数据,为了一劳永逸解决单词释义、单词例句等种种方面的问题,我打算提取mdx词典数据,将词典里面所有单词的数据做成数据表,并上传至云开发。这样的话,另一个小程序“法语动词变位记忆小助手”也能共享成果。
作为一个懒人,肯定不会手动去处理这么多数据(提取mdx之后有60万行数据,去除对我来说没用的动词变位数据,还有15万行,共计12000余个单词)。所以打算使用python和Beautiful Soup(以下可能简称BS)进行数据处理。引用官方文档的说法:Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库。它能够通过你喜欢的转换器实现惯用的文档导航、查找,修改文档的方式。Beautiful Soup会帮你节省数小时甚至数天的工作时间。
初始需要处理的文本
初始文本如下,下面仅选取两个单词的详情页作为示例:
<zidingyi>
abandonner
<h1 class="Adresse" >abandonner</h1><br /><span class="CategorieGrammaticale" >verbe transitif </span><br />
<span class="Indicateur">(déserter) </span><br />
<div class="Traductionchinois" >擅离</div>
<span class="Locution2" id="48" >abandonner son poste</span>
<div class="Traduction2chinois" >擅离职守</div Traduction2>
</td></tr></table>
<span class="Indicateur">(laisser) </span><br />
<div class="Traductionchinois" >抛弃</div>
<span class="Locution2" id="49" >abandonner un animal</span>
<div class="Traduction2chinois" >丢弃一只动物</div Traduction2>
<span class="Locution2" id="50" >partir en abandonnant femme et enfants</span>