python selenium 小爬虫

主要流程 读取excel文件中的单词——利用selenium 去百度翻译中获取单词对应的音标——写入cvs文件

selenium 安装 环境配置略过

谷歌浏览器打开百度翻译并等待baidu_translate_input加载完成

browser = webdriver.Chrome()

url = “https://fanyi.baidu.com/?aldtype=85#en/zh/”

browser.get(url)

WebDriverWait(browser, 1000).until(EC.presence_of_all_elements_located((By.ID, ‘baidu_translate_input’)))

打开excel文件,并获取单词sheet的 行数

excelfile = xlrd.open_workbook(r’F:\studytest\word.xlsx’)

sheet = excelfile.sheet_by_name(“单词”)

cnt = sheet.nrows

csv文件写入标题

with open(r’F:\studytest\result.csv’, ‘a’, encoding=‘utf-8’,newline=’’) as csvfile:

writer = csv.writer(csvfile)

writer.writerow((“单词”, “音标”))

定位baidu_translate_input并输入单词

browser.find_element_by_id(‘baidu_translate_input’).send_keys(mystr)

点击翻译

browser.find_element_by_id(‘translate-button’).click()

获取音标

phonetic = browser.find_element_by_class_name(‘dictionary-spell’).text # 音标

全部代码

#!/usr/bin/env python

# -*- coding: utf-8 -*-

# @version : Python 3.7.3

# @Time : 2019/7/24 20:13

import xlrd

import time

import csv

from selenium import webdriver

from selenium.webdriver.support.ui import WebDriverWait

from selenium.webdriver.support import expected_conditions as EC

from selenium.webdriver.common.by import By

browser = webdriver.Chrome()

url = "https://fanyi.baidu.com/?aldtype=85#en/zh/"

browser.get(url)

WebDriverWait(browser, 1000).until(EC.presence_of_all_elements_located((By.ID, 'baidu_translate_input')))

excelfile = xlrd.open_workbook(r'F:\studytest\word.xlsx')

sheet = excelfile.sheet_by_name("单词")

cnt = sheet.nrows

with open(r'F:\studytest\result.csv', 'a', encoding='utf-8',newline='') as csvfile:

writer = csv.writer(csvfile)

writer.writerow(("单词", "音标"))

for i in range(cnt):

mystr = sheet.cell(i, 0).value

browser.find_element_by_id('baidu_translate_input').send_keys(mystr)

browser.find_element_by_id('translate-button').click()

WebDriverWait(browser, 1000).until(EC.presence_of_all_elements_located((By.CLASS_NAME, 'trans-left')))

try:

words = browser.find_element_by_class_name('strong').text # 单词

phonetic = browser.find_element_by_class_name('dictionary-spell').text # 音标

print("%s %s" % (words, phonetic))

data = (words, phonetic)

with open(r'F:\studytest\result.csv', 'a', encoding='utf-8', newline='') as csvfile:

writer = csv.writer(csvfile)

writer.writerow(data)

except:

pass

time.sleep(1)

browser.find_element_by_id('baidu_translate_input').clear()

browser.close()

browser.quit()

print("完成,请到相应文件夹查看!")1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

python音标1003python音标_python selenium 爬取百度翻译单词音标相关推荐

  1. python怎么读发音百度翻译-python selenium 爬取百度翻译单词音标-Go语言中文社区...

    python selenium 小爬虫 主要流程 读取excel文件中的单词--利用selenium 去百度翻译中获取单词对应的音标--写入cvs文件 selenium 安装 环境配置略过 谷歌浏览器 ...

  2. 从入门到入土:Python爬虫学习|实例练手|爬取百度翻译|Selenium出击|绕过反爬机制|

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  3. 使用python中的Selenium爬取百度文库word文章

    参考文章:Python3网络爬虫(九):使用Selenium爬取百度文库word文章,链接为: https://blog.csdn.net/c406495762/article/details/723 ...

  4. python爬百度翻译-Python爬取百度翻译(利用json提取数据)

    本篇文章给大家带来的内容是关于Python爬取百度翻译(利用json提取数据),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 工具:Python 3.6.5.PyCharm开发工具. ...

  5. 从入门到入土:Python爬虫学习|实例练手|爬取百度产品列表|Xpath定位标签爬取|代码注释详解

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  6. Python爬取百度翻译及有道翻译

    Python爬取百度翻译及网易有道翻译 百度翻译 一.简介 明确翻译链接,百度翻译链接:https://fanyi.baidu.com/,但是该链接不能为我们提供翻译的内容,此时需要在chrome浏览 ...

  7. 求解Python 爬取百度翻译手机版{errno:997,from:zh,to:en,query:\u4eba\u751f\u82e6\u77ed}怎么办

    环境:python3.7.3 import requestsurl = "https://fanyi.baidu.com/basetrans" data = {"quer ...

  8. 如何用浏览器调试js代码,不如先看看如何爬取百度翻译(多图警告)

    爬取百度翻译 爬取网站四部曲 分析 langdetect v2transapi?from=zh&to=en 分析重点请求出现的问题 解决问题 js代码调试 代码实现 注意 爬取网站四部曲 分析 ...

  9. python爬虫动态加载页面_Python+Selenium爬取动态加载页面(2)

    注: 上一篇<Python+Selenium爬取动态加载页面(1)>讲了基本地如何获取动态页面的数据,这里再讲一个稍微复杂一点的数据获取全国水雨情网.数据的获取过程跟人手动获取过程类似,所 ...

最新文章

  1. Tungsten Fabric SDN — 与 OpenStack 的集成部署
  2. 《Spark与Hadoop大数据分析》——1.2 大数据科学以及Hadoop和Spark在其中承担的角色...
  3. GoDaddy服务器MySQL配置文件,仅供参考
  4. VS2010中使用gtest简单案例
  5. Qt学习笔记-编写简易的音乐播放器
  6. javaScript实现选中文字提示新浪微博分享的效果
  7. 拓端tecdat|R语言时间序列数据指数平滑法分析交互式动态可视化
  8. 重磅:国刊4区变1区!2021年中科院分区表正式公布!
  9. Java中PDF转WORD
  10. Python wordcloud 如何修改云图字体颜色
  11. 深度学习相关的硬件配置
  12. 学习python表情包_我用Python一键保存了半佛老师所有的骚气表情包
  13. 简单的集装箱号码识别
  14. Apache虚拟主机示例
  15. Textstudio 应用程序无法正常启动0xc000007b
  16. 如何用Xshell快速连接远程电脑
  17. BUUCTF Misc杂项前十二道题的思路和感悟
  18. 话筒和扩音器的实现的原理,和关于RFID的解释
  19. 2015 年天猫双 11 全纪录:疯狂到 912 亿,给大家推荐点装修品牌
  20. DB2数据库的简单介绍和用法,编程序技巧

热门文章

  1. Spine动画动态切换模型显示
  2. 信号数据shannon entropy计算
  3. html 磨砂 原理,使用HTML和CSS设计磨砂玻璃效果
  4. Joomla version 1.5.12 suffers from path disclosure and local file inclusion vulnerabilities.
  5. git push 报错 Empty reply from server 或 Failed to connect to github.com port 443: Time out
  6. 如何在Linux杀死进程的名字?
  7. 计算机~通信领域几百本常用电子书合集
  8. 少说话多写代码之Python学习017——字典的方法(items、pop)
  9. 编译项目时pangolin出现莫名其妙的问题
  10. 移动互联网应用开发概览