学习的一些基础也完成的差不多了,下面就尽量自己来完成一下对百度文库文章的爬取,尽量自己自主完成
还有就是手机软件爬虫的实现
百度文库文章的爬取
手机端的反爬手段少一点,可以修改头部,让其实现手机端网页的访问
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('user-agent="Mozilla/5.0 (Linux; Android 4.0.4; Galaxy Nexus Build/IMM76B) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.133 Mobile Safari/535.19"')
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://wenku.baidu.com/view/aa31a84bcf84b9d528ea7a2c.html')
爬取百度文库的过程中,到了点击继续阅读的部分时,报错了,因为上面有一个分块,覆盖在其上面,导致其无法点击,在网上找了许多的东西都没有尝试成功,正是这样的过程才发现了很多自己的不足。所以说还是要多实践呀!问题一直没有得到解决,所以我一直就卡在了下面这一段,也对这个项目失去了一些兴趣,所以暂时先放一放。
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
from selenium.common.exceptions import TimeoutException
def search():
options = webdriver.ChromeOptions()
options.add_argument('user-agent="Mozilla/5.0 (Linux; Android 4.0.4; Galaxy Nexus Build/IMM76B) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.133 Mobile Safari/535.19"')
driver = webdriver.Chrome(chrome_options=options)
Wait = WebDriverWait(driver,10)
driver.get('https://wenku.baidu.com/view/aa31a84bcf84b9d528ea7a2c.html')
Con = Wait.until(EC.element_to_be_clickable((By.XPATH,'/html/body/div[2]/div[2]/div[6]/div[2]/div[2]/div[1]/div')))
Con.click()