Scrapy:抓取html所有特定元素的兩個方法
比如要獲取所有class=test的div元素,
1. 用Scrapy,示範程式碼:
def parse(self, response):
hxs = Selector(response)
items = []
divs = hxs.xpath('//div[@class="test"]')
2. 用lxml,示範程式碼:
from lxml import etree #import mechanize import lxml.html #import cookielib #br = mechanize.Browser() #r = br.open('http://yourdomain.com') #html = br.response().read() #root = lxml.html.fromstring(html) #divs = root.xpath("//div[@class='test']") hparser = etree.HTMLParser(encoding='utf-8') #for avoiding unicode codec problems htree = etree.parse('http://yourdomain.com',hparser) htree.write('/tmp/bi.html') divs= htree.xpath("//div[@class='test']")
要獲取class包含test的所有div,比如<div class="test website"></div>
把上述xpath的引數修改為 "div[contains(@class,'test')]" 即可。
Scrapy內部解析引擎也是用的lxml。
參考連結:
by iefreer
相關推薦
Scrapy:抓取html所有特定元素的兩個方法
比如要獲取所有class=test的div元素,1. 用Scrapy,示範程式碼: def parse(self, response): hxs = Selector(response) items = [] divs
一個站點的誕生02--用Scrapy抓取數據
項目 selector 默認安裝 找不到 shang foo 術語 替換 產生 假設想抓數據,就須要有爬蟲程序,業內叫crawler或者spider。 有各種語言版本號的開源爬蟲。c++, Java, php,在github上搜一下,以"spider c++"為k
Scrapy抓取Quotes to Scrape
same iss ict -a json 一個個 doc common lang # 爬蟲主程序quotes.py # -*- coding: utf-8 -*- import scrapy from quotetutorial.items import QuoteIte
scrapy抓取免費代理IP
代理 爬蟲 python scrapy 1、創建項目scrapy startproject getProxy2、創建spider文件,抓取www.proxy360.cn www.xicidaili.com兩個代理網站內容cd項目的spiders模塊下執行scrapy genspider pro
Scrapy抓取動態網頁
都是 搜索 華盛頓 etime 觀察 review llb 得到 我們 動態網頁指幾種可能: 1)需要用戶交互,如常見的登錄操作; 2)網頁通過JS/ AJAX動態生成,如一個html裏有<div id="test"></div>,通過JS生成&l
Python使用lxml模塊和Requests模塊抓取HTML頁面的教程
有時 oms 世界 tel 4.0 取出 itl imp syntax Web抓取Web站點使用HTML描述,這意味著每個web頁面是一個結構化的文檔。有時從中 獲取數據同時保持它的結構是有用的。web站點不總是以容易處理的格式, 如 csv 或者 json 提供它們的數據
Scrapy抓取起點中文網排行榜
pro 起點 type [1] -m += 描述 頁面 名稱 項目名稱:qidian 項目描述:利用scrapy抓取七點中文網的“完本榜”總榜的500本小說,抓取內容包括:小說名稱,作者,類別,然後保存為CSV文件 目標URL:https://www.qidian.com/
scrapy抓取某些樣式的博客園博客信息
mongo from split yield 標簽 col chrome fin afa 測試過很多樣式的博客園,就發現長書這樣的也就是我的博客這樣的抓取不了,標簽不一樣。其他的只需要把bky.py下的user的值即‘username’改為要抓取的用戶的用戶名即可,如: u
Scrapy 抓取股票行情
安裝 Coding 環境 tps .org mat 等價 node als 安裝scrapy會出現錯誤,我們選擇anaconda3作為編譯環境,搜索scrapy安裝(有錯誤自查) 創建scrapy爬蟲項目: 調出cmd,到相應目錄:輸入: scrapy startpr
python3 + scrapy 抓取boss直聘崗位
前言:本文為記錄工程實現過程,會引用其他文章,如果又不清晰的地方可以檢視原文章。本文主旨在於記錄,所以部分作者瞭解的部分可能不會介紹而直接操作,如果有疑問請留言或者直接使用搜索引擎。 引用: windows安裝scrapy 建立第一個scrapy工程 一、安裝scrapy 管理員模式開啟power
Scrapy入門例項(使用Scrapy抓取豆瓣電影top250榜單)
專案地址:https://github.com/yuanfuzhi/ScrapyDemo.git 一 Scrapy介紹與安裝 1, Scrapy介紹 Scrapy是一個為了爬取網站資料,提取結構性資料而編寫的應用框架。可以應用在包括資料探勘,資訊處理或儲存歷史資料等一系列的程式中
使用Scrapy抓取數據
元素 www. ace 任務 onf 目錄 mod 模塊 獲得 轉載:http://blog.javachen.com/2014/05/24/using-scrapy-to-cralw-data.html Scrapy是Python開發的一個快速,高層次的屏幕抓取和web抓
scrapy——抓取知乎
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
scrapy抓取拉勾網職位信息(一)——scrapy初識及lagou爬蟲項目建立
報錯 中間鍵 方式 set 分享圖片 生成 pytho 薪酬 color 本次以scrapy抓取拉勾網職位信息作為scrapy學習的一個實戰演練 python版本:3.7.1 框架:scrapy(pip直接安裝可能會報錯,如果是vc++環境不滿足,建議直接安裝一個visua
scrapy抓取拉勾網職位資訊(一)——scrapy初識及lagou爬蟲專案建立
本次以scrapy抓取拉勾網職位資訊作為scrapy學習的一個實戰演練 python版本:3.7.1 框架:scrapy(pip直接安裝可能會報錯,如果是vc++環境不滿足,建議直接安裝一個visual studio一勞永逸,如果報錯缺少前置依賴,就先安裝依賴) 本篇
scrapy抓取拉勾網職位資訊(四)——對欄位進行提取
上一篇中已經分析了詳情頁的url規則,並且對items.py檔案進行了編寫,定義了我們需要提取的欄位,本篇將具體的items欄位提取出來 這裡主要是涉及到選擇器的一些用法,如果不是很熟,可以參考:scrapy選擇器的使用 依舊是在lagou_c.py檔案中編寫程式碼 首先是匯入Lag
scrapy 抓取拉鉤 ajax
# -*- coding: utf-8 -*- import scrapy from LagouSpider.items import LagouspiderItem import json class LagouSpider(scrapy.Spider): na
爬蟲進階:Scrapy抓取boss直聘、拉勾心得經驗
關於使用Scrapy的體會,最明顯的感受就是這種模板化、工程化的腳手架體系,可以說是拿來即可開箱便用,大多僅需按一定的規則套路配置,剩下的就是專注於編寫跟爬蟲業務有關的程式碼。絕大多數的反反爬蟲策略,大多有以下幾種: 忽略robots.txt協議 新增隨機請求
scrapy抓取github使用者郵箱功能的實現
實現的流程大概是這樣: 1.訪問github每日精選專案 https://github.com/trending?since=daily 2.使用selenium或requests完成登入操作 3.檢視每個專案Star的使用者列表 4.遍歷所有使用者,訪問使用
用Scrapy抓取的中文字元匯出到csv中出現亂碼
背景 按照這篇文章學些Scrapy框架,爬取豆瓣電影Top250的資訊,將資訊匯入到本地csv檔案時,由於電影名稱是中文,儲存時出現了亂碼。 解決辦法 在setting檔案中加入這樣一行語句: FEED_EXPORT_ENCODING = ‘utf-8-sig’ 儲存se