Spanishdict是一个在线的西班牙语翻译网站,因为是西译英,所以比起大多数西译中的翻译靠谱一点。
网页排版也很舒服,最初上手爬虫就是因为想把上面一些词汇的翻译爬下来。结果接触下来,发现爬虫真的是一个大坑,填坑填到现在回头看一下最初的这几行代码,真的是没有什么技术含量。
放上来作为一个时间节点吧。
-
页面如下
-
代码如下
import requests
from requests.exceptions import RequestException
from bs4 import BeautifulSoup
import json
def get_one_page(url):
try:
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'
}
response = requests.get(url,headers=headers)
if response.status_code == 200:
return response.text
return None
except RequestException:
return None
def parse_one_page(html):
doc = BeautifulSoup(html,'lxml')
items = doc.find_all('div',class_='dictionary-neodict-indent-1')
content = []
for item in items:
print(item.text)
content.append(item.text)
return content
def write_to_file(content):
with open('spanishdict.txt','a',encoding='utf-8') as f:
f.write(json.dumps(content,ensure_ascii=False)+'\n')
def main(voca):
url= 'http://www.spanishdict.com/translate/'+ str(voca)
html = get_one_page(url)
content = parse_one_page(html)
write_to_file(content)
if __name__ == '__main__':
for voca in ['ir','venir']:
print(voca)
main(voca)
- 结果如下: