博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
有道语料库爬虫
阅读量:4350 次
发布时间:2019-06-07

本文共 1262 字,大约阅读时间需要 4 分钟。

from bs4 import BeautifulSoup

import urllib.parse
import re
import requests
import time

index = 0

session = requests.session()
f = open('C:\\Users\\Administrator\\Desktop\\dictionary\\words.txt','r',encoding='gb2312')
output = open("C:\\Users\\Administrator\\Desktop\\dictionary\\output.txt", "w")
for line in f.readlines():
time.sleep(10)
if(line != '\n'):
m = re.match(r'([a-zA-Z ]+)', line)
if m:
index += 1
url = 'http://dict.youdao.com/example/blng/eng/'+ m.group(1) + '/#keyfrom=dict.main.moreblng'
s = '(' + str(index) + ')銆? + line + "\n\r"
print("%s"% (s) ,file = output)
soup = BeautifulSoup(session.get(url).text)
blingual = soup.findAll(id = 'bilingual')
if blingual:
ol = blingual[0].ul
if ol:
ul = ol.findAll('li')
if(len(ul)<6):
num = len(ul)
else:
num = 6
for i in range(num):
li = ul[i]
if li.p:
if li.p.a:
if li.p.a.get('data-rel'):
s1 = urllib.parse.unquote(li.p.a['data-rel'].replace('+',' ').split('.')[0])
print(s1+"\n\r")
print("%s" % (s1), file = output)
if len(li.findAll('p')) > 1:
s2 = urllib.parse.unquote(li.findAll('p')[1].get_text().split()[0]).encode("gb18030").decode('gbk','ignore')
print("%s" % (s2), file = output)
print("\n\r\n\r", file = output)

 

由于这里格式变化了。所以,附上我的github链接。

转载于:https://www.cnblogs.com/Alex0111/p/7662242.html

你可能感兴趣的文章
jquery.validate.js表单验证
查看>>
ali面试点滴
查看>>
清除Cookie,登出操作
查看>>
VIM 使用教程
查看>>
Spring的replace-method标签
查看>>
2019.4.4 盒模型&定位&浮动
查看>>
iOS Block详解4
查看>>
4thweek.P_C poj3122 二分法
查看>>
前台线程与后台线程,AfxGetApp->GetMainWnd()与AfxGetMainWnd的不同 (转)
查看>>
WebNotes(PHP、css、JavaScript等)
查看>>
C++:文件的输入和输出
查看>>
Http协议、Tomcat、servlet
查看>>
Spring Boot (11) mybatis 关联映射
查看>>
macOS 下安装tomcat
查看>>
字符串格式化复习笔记
查看>>
c++ 宏定义调用不定参数的函数
查看>>
动态规划典型例题--背包问题九讲
查看>>
Qt之QHeaderView自定义排序(终极版)
查看>>
python----logging
查看>>
LBP特征 学习笔记
查看>>