在网上看到一个面试需求,获取某个论坛的相关博客,使用谷歌翻译完成翻译,然后再通过百度搜素引擎实现频率验证,今天下午刚好有时间,就琢磨了下,写出来给大家分享一下。
# _*_ coding:utf-8 _*_
# @Time : 15:52
# @Author :baizhou
from googletrans import Translator
import requests
from lxml import etree
def Google_Translator(text):
'''
利用谷歌翻译,实现文本翻译
:param text:
:return:
'''
translator = Translator(service_urls=['translate.google.cn'])
result = translator.translate(text, dest="zh-CN").text
return result
def Check_frequency(text, count):
'''
使用百度搜索,完成出现频率统计
:param text:
:return: 返回yes or no
'''
# 拼url
urls = "http://www.baidu.com/s?ie=UTF-8&wd={}".format(text)
# 请求百度
# 构造请求头
headers = {
'User-Agent': "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"
}
status_code_num = requests.get(urls, headers=headers).status_code
if status_code_num == 200:
"""
如果返回码为200,则代表请求成功"""
response = requests.get(urls, headers=headers).content.decode("utf-8")
# xpath的内容,读者要根据自己的网页结构去分析
mytree =etree.HTML(response)
contentList = mytree.xpath(".//*[@id='content_left']/div")
for content in contentList:
emList = content.xpath("./h3/a/em/text()")
for i in emList:
if len(str(i)) >= count:
return "yes"
else:
pass
return "no"
if __name__ == "__main__":
res = Check_frequency("深度学习的相关资料", 8)
print(res)