[TOC]
# Python爬蟲抓取之服務端渲染頁面抓取方法
服務端渲染頁面的數據內容通常分為兩種格式:
- 結構化數據: XML、JSON、csv等
- 半結構化數據: 主要為HTML文本為主。
## 半結構化數據
對于這類半結構化的HTML數據我們在`入門篇`中已經掌握了提取數據的方法,因此這里就不再詳細說明。
學到了這里,相信你已經可以使用`XPath`、`正則表達式`和`CSS選擇器`提取網頁數據了。
## 結構化數據處理
### JSON數據處理
以我們爬取百度貼吧熱議榜的為例,這個例子我們之前已經學習過了,可以再復習一下。
[實戰練習_百度貼吧熱議榜](../入門篇/實戰練習_百度貼吧熱議榜.md)
### XML文件格式解析
> 博客的RSS文件就是`xml`格式數據,我們來解析下博客RSS文件
使用`XPath`提取文章標題列表信息:
```Python
import requests as req
from lxml import etree
url='https://www.learnhard.cn/feed'
resp = req.get(url)
doc = etree.HTML(resp.content)
item = doc.xpath('//item/title/text()')
print(item)
```
關于結構化數據的解析示例就到這里,對于服務端渲染頁面我們爬取數據的難度相對很小。可能多出情況會因為登錄驗證、頻繁訪問彈出的驗證碼而增加難度。目前我們暫時不考慮驗證碼問題。
---
- 課程大綱
- 入門篇
- 爬蟲是什么
- 為什么要學習爬蟲
- 爬蟲的基本原理
- TCP/IP協議族的基本知識
- HTTP協議基礎知識
- HTML基礎知識
- HTML_DOM基礎知識
- urllib3庫的基本使用
- requests庫的基本使用
- Web頁面數據解析處理方法
- re庫正則表達式的基礎使用
- CSS選擇器參考手冊
- XPath快速了解
- 實戰練習:百度貼吧熱議榜
- 進階篇
- 服務端渲染(CSR)頁面抓取方法
- 客戶端渲染(CSR)頁面抓取方法
- Selenium庫的基本使用
- Selenium庫的高級使用
- Selenium調用JavaScript方法
- Selenium庫的遠程WebDriver
- APP移動端數據抓取基礎知識
- HTTP協議代理抓包分析方法
- Appium測試Android應用基礎環境準備
- Appium爬蟲編寫實戰學習
- Appium的元素相關的方法
- Appium的Device相關操作方法
- Appium的交互操作方法
- 代理池的使用與搭建
- Cookies池的搭建與用法
- 數據持久化-數據庫的基礎操作方法(mysql/redis/mongodb)
- 執行JS之execjs庫使用
- 高級篇
- Scrapy的基本知識
- Scrapy的Spider詳細介紹
- Scrapy的Selector選擇器使用方法
- Scrapy的Item使用方法
- Scrapy的ItemPipeline使用方法
- Scrapy的Shell調試方法
- Scrapy的Proxy設置方法
- Scrapy的Referer填充策略
- Scrapy的服務端部署方法
- Scrapy的分布式爬蟲部署方法
- Headless瀏覽器-pyppeteer基礎知識
- Headless瀏覽器-pyppeteer常用的設置方法
- Headless瀏覽器-反爬應對辦法
- 爬蟲設置技巧-UserAgent設置
- 反爬策略之驗證碼處理方法
- 反爬識別碼之點擊文字圖片的自動識別方法
- 反爬字體處理方法總結
- 防止反爬蟲的設置技巧總結
- 實戰篇
- AJAX接口-CSDN技術博客文章標題爬取
- AJAX接口-拉購網職位搜索爬蟲
- 執行JS示例方法一之動漫圖片地址獲取方法
- JS執行方法示例二完整mangabz漫畫爬蟲示例
- 應用實踐-SOCKS代理池爬蟲
- 落霞小說爬蟲自動制作epub電子書
- 一種簡單的適用于分布式模式知乎用戶信息爬蟲實現示例
- 法律安全說明