TA的每日心情 | 无聊 昨天 09:47 |
---|
签到天数: 528 天 连续签到: 1 天 [LV.9]测试副司令
|
1测试积点
代码如下:
- from selenium import webdriver
- import time
- driver = webdriver.Chrome()
- driver.get('https://wenku.baidu.com/view/83a62ad5316c1eb91a37f111f18583d048640f3c')
- time.sleep(5)
- elements=driver.find_elements_by_class_name('read-all')#继续阅读
- element=elements[0]
- element.click()
- time.sleep(5)
- yhm=driver.find_elements_by_css_selector('#TANGRAM__PSP_11__footerULoginBtn')#用户名登录
- yhmd=yhm[0]
- yhmd.click()
- yh=driver.find_elements_by_css_selector('#TANGRAM__PSP_11__userName')#用户名
- yh=yh[0]
- yh.send_keys('账号')
- mm=driver.find_elements_by_css_selector('#TANGRAM__PSP_11__password')#密码
- mm=mm[0]
- mm.send_keys('密码')
- dl=driver.find_elements_by_css_selector('#TANGRAM__PSP_11__submit')#点击登录按钮
- dl=dl[0]
- dl.click()
- time.sleep(10)
- gk=driver.find_elements_by_class_name('close-btn.default-bg')#关闭广告
- gkc=gk[0]
- gkc.click()
- time.sleep(5)
- driver.execute_script('window.scrollBy(0,200)')#特殊
- zc=driver.find_elements_by_class_name('read-all')#再次点击继续阅读
- zcc=zc[0]
- driver.execute_script("arguments[0].click();",zcc)#特殊,以及这个点击形式能不能变得传统
- xt=driver.find_elements_by_class_name('reader-word-layer')#爬取文章内容
- xt2=[str(i.text) for i in xt]
- print(''.join(xt2))
- 这个代码遇到图片旋转验证的时候需要手动操作
-
复制代码 问题:
1 能不能详细介绍一下 execute_script的写法与它内部的参数,以及它到底是个什么,是个函数么?为什么可以调用JS方法。感觉满特殊的。
2 在这篇代码中我点击了同样一个按钮两次,第一次时什么问题都没有,但在第二次点击的时候问题频出,请问这是因为什么呢?
3 有时候在第30行执行的时候它会错误的点击成按钮上方的广告,这是因为定位不够准确么?该如何解决?
|
|