python利用selenium爬取X蜂窝热门游记

最近因项目需要,学习了下爬虫。之前都是完成的静态网页的爬去,但大部分网页都是动态加载AJAX,所以学习了selenium。当然也可以通过在network中查找隐藏的网页内容,在利用requests去爬去相关内容。本次主要是为了学习selenium,爬取某蜂窝的热门游记。

from selenium import webdriver
from selenium.webdriver.common.by import By
import re
import time

def load_web(url):
    #打开火狐
    browser = webdriver.Firefox()
    browser.get(url)
    #page = brower.find_element(By.CSS_SELECTOR, 'a.pi')
    time.sleep(3)
    page = 0
    #游记名称及简介
    html_all = []
    content_all = []
    #页码
    while page < 10:
        
        html = browser.find_elements_by_css_selector('#_j_tn_content > div.tn-list > div > div.tn-wrapper > dl > dt > a')
        content = browser.find_elements_by_css_selector('#_j_tn_content > div.tn-list > div > div.tn-wrapper > dl > dd > a')
        html_all.append(html)
        content_all.append(content)
        #翻页
        browser.find_element_by_css_selector('.pg-next').click()
        time.sleep(3)
        page+=1
        
    print(html_all)
        
    return html_all, content_all


#主程序调用
url = 'http://www.mafenxxxxx'
crawl = load_web(url)


 
 
#输出[<selenium.webdriver.firefox.webelement.FirefoxWebElement (session="3ad01caf-cc95-4b22-bf85-40cc7d5ced58", element="6d3f8e25-20d4-43a3-969a-68c915274be9")>
本次,只是实现了简单的网页的翻页及抓取。对于首尾页、显示隐示等待、自动登录、解析文件、自动存储、phantomjs等等内容,以待后续完善。

#参考
http://ju.outofmemory.cn/entry/304084 #示例
https://www.cnblogs.com/zhaof/p/6953241.html #语法
http://selenium-python.readthedocs.io/api.html#module-selenium.webdriver.common.action_chains #官网

待进一步........










猜你喜欢

转载自blog.csdn.net/weixin_41512727/article/details/80907719