51Testing软件测试论坛

标题: selenium爬取网页时被自动跳转 [打印本页]

作者: 测试积点老人    时间: 2021-11-11 10:28
标题: selenium爬取网页时被自动跳转
近日在用selenium练习爬虫,发现在在执行到某一段代码的时候,这个页面便会自己跳转到一个无关页面。我怀疑是被反爬了。请问这种情况下该怎么办呢?
代码如下(在执行到32行的时候跳转):
  1. from selenium import webdriver
  2. import time
  3. driver = webdriver.Chrome()
  4. driver.get('https://wenku.baidu.com/view/83a62ad5316c1eb91a37f111f18583d048640f3c')
  5. time.sleep(5)
  6. elements=driver.find_elements_by_class_name('read-all')#继续阅读
  7. element=elements[0]
  8. driver.execute_script("arguments[0].click();",element)#特殊,以及这个点击形式能不能变得传统
  9. #element.click()传统形式
  10. time.sleep(5)
  11. yhm=driver.find_elements_by_css_selector('#TANGRAM__PSP_11__footerULoginBtn')#用户名登录
  12. yhmd=yhm[0]
  13. yhmd.click()
  14. yh=driver.find_elements_by_css_selector('#TANGRAM__PSP_11__userName')#用户名
  15. yh=yh[0]
  16. yh.send_keys('用户名')
  17. mm=driver.find_elements_by_css_selector('#TANGRAM__PSP_11__password')#密码
  18. mm=mm[0]
  19. mm.send_keys('密码')
  20. dl=driver.find_elements_by_css_selector('#TANGRAM__PSP_11__submit')#点击登录按钮
  21. dl=dl[0]
  22. dl.click()
  23. time.sleep(10)
  24. #gk=driver.find_elements_by_class_name('close-btn.default-bg')#关闭广告
  25. #gkc=gk[0]
  26. #gkc.click()
  27. #time.sleep(5)
  28. #下边为下滑点击
  29. driver.execute_script('window.scrollBy(0,1000)')#特殊
  30. print('你好')
  31. zc=driver.find_elements_by_class_name('read-all')#再次点击继续阅读
  32. print('woshi')
  33. zcc=zc[0]#在这跳转
  34. driver.execute_script("arguments[0].click();",zcc)#特殊,以及这个点击形式能不能变得传统
  35. time.sleep(10)
  36. print('zaizhe')
  37. driver.execute_script('window.scrollBy(0,10000)')#特殊
  38. print('天天')
  39. xt=driver.find_elements_by_class_name('reader-word-layer')#爬取文章内容
  40. print('meitian')
  41. xt2=[str(i.text) for i in xt]
  42. 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