Python爬虫实现谷歌翻译和百度验证

本文介绍如何利用Python爬虫实现谷歌翻译功能,并结合百度搜索引擎进行翻译后的频率验证,适用于面试中获取论坛博客内容的场景。
摘要由CSDN通过智能技术生成

        在网上看到一个面试需求,获取某个论坛的相关博客,使用谷歌翻译完成翻译,然后再通过百度搜素引擎实现频率验证,今天下午刚好有时间,就琢磨了下,写出来给大家分享一下。

# _*_ 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)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值