51Testing软件测试论坛
标题:
selenium爬取网页时被自动跳转
[打印本页]
作者:
测试积点老人
时间:
2021-11-11 10:28
标题:
selenium爬取网页时被自动跳转
近日在用selenium练习爬虫,发现在在执行到某一段代码的时候,这个页面便会自己跳转到一个无关页面。我怀疑是被反爬了。请问这种情况下该怎么办呢?
代码如下(在执行到32行的时候跳转):
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]
driver.execute_script("arguments[0].click();",element)#特殊,以及这个点击形式能不能变得传统
#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,1000)')#特殊
print('你好')
zc=driver.find_elements_by_class_name('read-all')#再次点击继续阅读
print('woshi')
zcc=zc[0]#在这跳转
driver.execute_script("arguments[0].click();",zcc)#特殊,以及这个点击形式能不能变得传统
time.sleep(10)
print('zaizhe')
driver.execute_script('window.scrollBy(0,10000)')#特殊
print('天天')
xt=driver.find_elements_by_class_name('reader-word-layer')#爬取文章内容
print('meitian')
xt2=[str(i.text) for i in xt]
print(''.join(xt2))
复制代码
作者:
海海豚
时间:
2021-11-12 10:10
看下能不能绕过这条呢
作者:
qqq911
时间:
2021-11-12 10:23
检查下定位是否正确
作者:
jingzizx
时间:
2021-11-12 15:53
能不能绕过去
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2