webdriver之富文本,Firefox配置加载

chrome驱动下载:http://chromedriver.storage.googleapis.com/index.html

加载浏览器配置,需要用FirefoxProfile(profile_directory)这个类来加载,

profile_directory既为浏览器配置文件的路径地址

二、FirefoxProfile

1.要想了解selenium里面API的用法,最好先看下相关的帮助文档打开cmd窗口,

输入如下信息:
-》python

-》from selenium import webdriver

-》help(webdriver.FirefoxProfile)

Help on class FirefoxProfile in module

selenium.webdriver.firefox.firefox_profile:

class FirefoxProfile(builtin.object)
| Methods defined here:
|
init(self, profile_directory=None)
| Initialises a new instance of a Firefox Profile

| :args:
| - profile_directory: Directory of profile that you want to use.
| This defaults to None and will create a new
| directory when object is created.

2.翻译过来大概意思是说,这里需要profile_directory这个配置文件路径的参数

3.profile_directory=None,如果没有路径,默认为None,启动的是一个新的,

有的话就加载指定的路径。

三、profile_directory

1.问题来了:Firefox的配置文件地址如何找到呢?

2.打开Firefox点右上角设置>?(帮助)>故障排除信息>显示文件夹

四、启动配置文件

1.由于文件路径存在字符:\ ,反斜杠在代码里是转义字符,这个有点代码基础的应该都知道。
2.遇到转义字符,为了不让转义,有两种处理方式:

第一种:\ (前面再加一个反斜杠)

第二种:r”\"(字符串前面加r,使用字符串原型)

 
  
 1 from selenium import webdriver
 2 import time
 3 # 加载Firefox配置文件,可免登录
 4 profile_directory = r'C:\Users\ct-wyl\AppData\Roaming\Mozilla\Firefox\Profiles\lt6n8ynh.default'
 5 profile = webdriver.FirefoxProfile(profile_directory)
 6 webdriver = webdriver.Firefox(profile)
 7 blogurl = 'https://www.cnblogs.com'
 8 yanrublog = blogurl + r'/FlyToDream'
 9 webdriver.get(yanrublog)
10 # 点击新随笔
11 webdriver.find_element_by_id('blog_nav_newpost').click()
12 time.sleep(2)
13 edittitle = u'pythong+selenium自动创建随笔'
14 editbody = '这里是发帖区域,赶紧写下你的思绪'
15 webdriver.find_element_by_id('Editor_Edit_txbTitle').send_keys(edittitle)
16 # 第一种写法:通过切换iframe
17 # iframe = webdriver.find_element_by_id('Editor_Edit_EditorBody_ifr')
18 # webdriver.switch_to.frame(iframe)
19 # webdriver.find_element_by_id('tinymce').send_keys(editbody)   # 富文本区输入内容
20 # webdriver.switch_to.default_content()
21 # 第二种,通过js编辑富文本内容
22 js = 'document.getElementById("Editor_Edit_EditorBody_ifr").contentWindow.document.body.innerHTML="%s"'%editbody
23 webdriver.execute_script(js)
24 webdriver.find_element_by_id('Editor_Edit_lkbPost').click()   #发布
 
  

 

 

 




转载于:https://www.cnblogs.com/FlyToDream/p/10734613.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值