看论文有很多生词不会,这时候就需要谷歌翻译查词,查完词又懒得记,一开始想爬取谷歌翻译的历史记录,但是使用爬虫打开网页后没有任何历史记录,所以历史记录是留在本地的,无法爬取,只能手动复制网页代码进行处理。
首先打开谷歌的历史记录页面,并在开发者模式中找到如图,复制途中class="tlid-history-entry-list entry-list"项,保存在txt文件中。
然后使用python处理数据,将其中的单词和对应的解释处理。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import re
with open(u'C:/Users/Wu/Desktop/翻译历史记录.txt', 'r',encoding="utf-8") as f:
pattern1 = re.compile(r'tl-input"><bdi>([a-z]+)</bdi></div><div class="tl-output"><bdi>([\u4e00-\u9fa5]+)</bdi>')
pattern2 = re.compile(r'tl-input"><bdi>([a-z]+) ([a-z]+)</bdi></div><div class="tl-output"><bdi>([\u4e00-\u9fa5]+)</bdi>')#匹配中文
str = f.read()
m1 = pattern1.findall(str)
m2 = pattern2.findall(str)
m1 = list(set(m1))
m2 = list(set(m2))
# print(m1)
# print(m2)
with open(u'C:/Users/Wu/Desktop/论文单词1.txt','a',encoding='utf-8') as f:
for var in m1:
# print(var)
f.write(var[0]+" "*(40-len(var[0]))+var[1]+"\n")
for var in m2:
f.write(var[0]+" "+var[1]+" "*(40-len(var[0])-len(var[1]))+var[2]+"\n")
代码会自动生成一个名为论文单词1的txt,其中就是单词和对应的翻译,这里代码只能处理一个单词或者两个单词中间为空格的情况,其他情况可以自己添加。