久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

Win7+Python2.7安裝GDAL:源碼編譯與MSI兩條路通通走通

Win7+Python2.7安裝GDAL:源碼編譯與MSI兩條路通通走通 簡介針對(duì) Windows 7 64 位平臺(tái)下 Python 2.7 安裝 GDAL 的教程文檔面向需要使用 GDAL 處理地理空間數(shù)據(jù)的開發(fā)者特別是初次接觸時(shí)經(jīng)常遇到編譯與依賴問題的用戶。文檔詳細(xì)梳理了安裝前的環(huán)境準(zhǔn)備包括 Visual Studio 2010、GEOS 3.3.8 與 Python 2.7并對(duì)比介紹了源碼編譯與官方 MSI 安裝兩種方案清晰標(biāo)注了操作命令與目錄切換等關(guān)鍵細(xì)節(jié)。文中還給出了 swig.exe 未安裝時(shí)環(huán)境變量的配置方法以及 DLL load failed 時(shí) bin 目錄的添加路徑方便讀者對(duì)照操作。資源僅含 1 個(gè) docx 文檔大小約 95KB內(nèi)容涵蓋環(huán)境配置、兩種安裝路徑、安裝結(jié)果驗(yàn)證以及常見錯(cuò)誤排錯(cuò)既有操作步驟又有附錄錯(cuò)誤表便于逐項(xiàng)排查。整個(gè)安裝流程經(jīng)過真實(shí)環(huán)境驗(yàn)證排錯(cuò)思路完整按文檔操作可少走彎路。已有 628 人瀏覽學(xué)習(xí)對(duì)計(jì)劃在舊版 Windows 與 Python 環(huán)境中部署 GDAL 的用戶具有直接參考價(jià)值可有效節(jié)省自行摸索的時(shí)間。1. 老機(jī)器上裝 GDAL源碼編譯與 MSI 安裝兩條路我都走通了在 Win7 64 位這臺(tái)還在服役的老機(jī)器上給 Python 2.7 裝 GDAL是我最近做過最折騰的事不是缺 swig 就是找不到 Vcvarsall.bat好不容易裝上import gdal 又開始報(bào) DLL 加載失敗。我把源碼編譯和官方 MSI 兩條路線都完整走通以后最大的體會(huì)是別盲目追新GDAL 1.9.2 在 2013 年的環(huán)境里遠(yuǎn)比 1.11.0 穩(wěn)網(wǎng)上資料多到能讓你迷路但踩坑記錄也更完整。這份資源解決的是兩件事一是把 GDAL 的 C 核心裝好二是讓 Python 2.7 能 import gdal并順利讀取柵格數(shù)據(jù)。如果你跟我一樣在 Win7 64 位下用 VS2010 開發(fā)或者想快速用上測繪、遙感里的 GDAL 工具這篇筆記里的每一步命令、每一處環(huán)境變量都能讓你少走半天彎路。適合那種“機(jī)器不能換、Python 版本不能升、但功能必須跑起來”的場景。2. 安裝前的預(yù)備工作版本搭配、環(huán)境變量和 x64 命令提示符2.1 版本搭配GDAL 1.9.2 不是越老越好是剛剛好在開裝之前先把這堆版本的依賴關(guān)系捋清楚。GDAL 本身是一個(gè) C 庫Python 要調(diào)用它不是直接通過 ctypes而是通過 SWIG 生成的包裝層。這個(gè)包裝層在編譯時(shí)會(huì)調(diào)用 Python.h 和 Python 的導(dǎo)入庫同時(shí)要鏈接到 gdal 的核心 DLL。也就是說你現(xiàn)在用的 Python 是哪一版、VS 是哪一版、GDAL 源碼是哪個(gè)版本三者必須能對(duì)上號(hào)。我一開始圖新鮮選了 GDAL 1.11.0結(jié)果在編譯 swig 包裝時(shí)遇到一個(gè)關(guān)于gdal_version.h宏定義錯(cuò)誤滿世界找資料只找到一篇博客而且那是針對(duì) 1.9.2 的。換回 1.9.2 后同樣的操作一次通過。這個(gè)版本的“資料多”本身就是最大的優(yōu)勢——遇到問題你能快速定位到你當(dāng)前版本而不是在一個(gè)泛泛的“新版”下面猜答案。GEOS 3.3.8 是個(gè)空間幾何運(yùn)算庫GDAL 的 OGR 模塊在編譯時(shí)可以鏈接它。如果只是做柵格讀寫的安裝不裝 GEOS 也能跑但一旦你后續(xù)要處理矢量相交、緩沖區(qū)這類操作缺少 GEOS 的 GDAL 會(huì)在運(yùn)行時(shí)直接報(bào)“GEOS support not enabled”。所以我在安裝時(shí)把 GEOS 也一并準(zhǔn)備好。VS2010 則是這一切的編譯基石它提供 nmake 程序維護(hù)工具、C 編譯器和 vcvarsall.bat 批處理。裝了 VS2010 但不裝 VC 組件后面編譯會(huì)報(bào)“找不到 cl.exe”這一點(diǎn)很容易被忽略。另一個(gè)需要提前決定的是走源碼編譯還是 MSI。源碼編譯需要 VS2010 和 swig適合想了解 GDAL 架構(gòu)的人MSI 裝起來快但沒法看到中間產(chǎn)物。我這次是兩條都走了所以后續(xù)章節(jié)會(huì)分別講。提前決定路線能幫你明確安裝順序避免裝到一半才想起來缺工具。我把這組版本整理成一張表你對(duì)著匹配能省掉很多后續(xù)的“找不到頭文件”問題組件推薦版本作用注意事項(xiàng)操作系統(tǒng)Win7 64 位目標(biāo)平臺(tái)命令提示符要用 x64 兼容版否則環(huán)境變量不完整Visual Studio2010編譯工具鏈必須包含 VC 組件提供 nmake 和 cl.exeGDAL1.9.2核心地理數(shù)據(jù)抽象庫可選 1.11.0但 1.9.2 踩坑資料更多GEOS3.3.8空間幾何運(yùn)算庫編譯 GDAL 時(shí)可選依賴建議安裝Python2.7腳本環(huán)境注意是 32 位還是 64 位需與 GDAL DLL 位數(shù)一致SWIG2.10.0生成 Python 包裝代碼源碼編譯路線必需MSI 路線不需要這里要特別說一句 Python 位數(shù)的問題。Win7 64 位系統(tǒng)可以裝 32 位或 64 位的 Python 2.7而我最終用的是 32 位版本因?yàn)?GDAL 1.9.2 在 Win7 上常見的預(yù)編譯 DLL 是 32 位。如果你裝了 64 位 Python而手頭只有 32 位 gdal192.dllimport 時(shí)照樣報(bào)“找不到指定的模塊”。所以選版本時(shí)把 Python 位數(shù)和 GDAL 的位數(shù)保持一致比糾結(jié) GDAL 大版本更關(guān)鍵。2.2 用對(duì)命令提示符為什么普通 cmd 跑不了 nmake普通 cmd 窗口里沒有 nmake、cl.exe 這些編譯工具的環(huán)境變量。nmake 是 VS 自帶的程序維護(hù)工具它從 makefile.vc 里讀取編譯規(guī)則而 makefile.vc 里寫死了要調(diào)用 cl.exe 以及一堆 include/lib 路徑。這些路徑只有在執(zhí)行過 vcvarsall.bat 之后才會(huì)被設(shè)置到當(dāng)前會(huì)話中。VS2010 的“Visual Studio x64 兼容工具命令提示符”就是預(yù)先調(diào)好 vcvarsall.bat 并讓它以 x64 目標(biāo)架構(gòu)配置環(huán)境變量的一個(gè)快捷方式。我試過在普通 cmd 里手動(dòng) cd 到 VC 目錄運(yùn)行vcvarsall.bat x64偶爾能生效但一旦目錄帶空格或路徑有特殊字符就會(huì)出錯(cuò)而快捷方式不存在這個(gè)問題。正確的打開方式是點(diǎn)“開始 → 所有程序 → Microsoft Visual Studio 2010 → Visual Studio Tools → Visual Studio x64 兼容工具命令提示符”然后右鍵選擇“以管理員身份運(yùn)行”。為什么要管理員權(quán)限因?yàn)楹罄m(xù) nmake 會(huì)把生成的文件寫到 swig 目錄下有些目錄權(quán)限不夠會(huì)拒絕寫而且 Python 的 setup.py install 要往 C:\Program Files (x86)\Python27\Lib\site-packages 里寫 .py 和 .pyd 文件非管理員會(huì)報(bào)權(quán)限錯(cuò)誤。打開后先把目錄切換到 GDAL 源碼的 swig 子目錄假設(shè)解壓在 C:\OGC\GDAL192\gdal-1.9.2cd C:\OGC\GDAL192\gdal-1.9.2\swig然后驗(yàn)證環(huán)境是否就緒echo %VCINSTALLDIR%如果輸出了類似C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC的內(nèi)容說明編譯環(huán)境已經(jīng)有效若為空你需要重新用上面的快捷方式打開別繼續(xù)硬跑。除了快捷方式你還可以在普通 cmd 里執(zhí)行call C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat x64但路徑中的空格容易被轉(zhuǎn)義所以我不推薦。而且手動(dòng)調(diào)用無法獲得 VS 完整的內(nèi)部變量比如_VSPROMPT。用自帶快捷方式最穩(wěn)。2.3 配置 Path提前給 swig 和 gdal192.dll 找好家無論走源碼編譯還是 MSI 安裝最后系統(tǒng)都得能找到 swig.exe 和 gdal192.dll。Swig 是源碼編譯路線的外部工具下載 swigwin-2.10.0 解壓后把 swig.exe 所在目錄比如 C:\swigwin-2.10.0加入系統(tǒng)環(huán)境變量 Path。GDAL 的 bin 目錄在源碼編譯時(shí)是C:\OGC\GDAL192\gdal-1.9.2\bin在 MSI 安裝時(shí)是C:\Program Files\GDAL192或你自己指定的安裝路徑下的 bin。操作步驟是右擊“計(jì)算機(jī) → 屬性 → 高級(jí)系統(tǒng)設(shè)置 → 環(huán)境變量”在“系統(tǒng)變量”中找到 Path點(diǎn)“編輯”把這兩個(gè)目錄追加進(jìn)去用分號(hào)與原有項(xiàng)分隔。之所以要提前配是因?yàn)?Python 在 import gdal 時(shí)通過_gdal.pyd加載 gdal192.dllWindows 的 DLL 搜索順序包括應(yīng)用程序目錄、系統(tǒng)目錄、當(dāng)前目錄以及 Path 中列出的目錄。如果不加 bin就一定會(huì)出現(xiàn)“DLL load failed: 找不到指定的模塊”。這個(gè)錯(cuò)誤我在源碼編譯和 MSI 兩條路線里都遇到了屬于共性問題不如一開始就堵死。配置完記得把命令提示符窗口關(guān)閉重開讓新的 Path 在該會(huì)話中生效。你可以在新窗口里輸入where swig檢查 swig 是否被識(shí)別如果打印出完整路徑說明 Path 配置成功。環(huán)境變量修改后不僅命令行窗口要重開如果 Python 是直接從 IDLE 啟動(dòng)的IDLE 也要重啟否則在 IDLE 里運(yùn)行 import gdal 仍然會(huì)報(bào)同樣的 DLL 錯(cuò)誤。這個(gè)細(xì)節(jié)我差點(diǎn)漏掉。另外如果你還裝了 Python 的第三方 IDE它們同樣會(huì)緩存環(huán)境變量最好全部重啟一遍。3. 源碼編譯路線nmake 生成綁定、setup.py 安裝與三處必踩的坑3.1 生成 Python 包裝nmake /f makefile.vc python 和 swig 的依賴源碼編譯路線的第一步是在 swig 目錄下執(zhí)行 nmake讓 makefile.vc 幫你生成 Python 包裝代碼。在 x64 兼容工具命令提示符中先確保當(dāng)前目錄是C:\OGC\GDAL192\gdal-1.9.2\swig然后輸入nmake /f makefile.vc python這條命令的行為是先更新 setup.ini 寫入 GDAL 的安裝路徑然后 cd 到 python 子目錄調(diào)用 swig.exe 去解析 gdal 的 .i 接口定義文件生成gdal_wrap.c和osgeo/gdal.py等一整套包裝產(chǎn)物。/f參數(shù)指定 makefile 文件名因?yàn)槟J(rèn)文件名是 makefile而 GDAL 把 Windows 專用的規(guī)則放在 makefile.vc 里所以必須顯式指定。我第一次跑這條命令時(shí)卡在了swig.exe 不是內(nèi)部或外部命令。這就是因?yàn)闄C(jī)器上根本沒裝 SWIG。SWIG 是一個(gè)獨(dú)立的代碼生成工具GDAL 的源碼里只有接口文件并不附帶 swig.exe。解決辦法是下載 swigwin-2.10.0這個(gè)版本在 Python 2.7 時(shí)代是穩(wěn)定選擇。解壓后把 swig.exe 所在的整個(gè)目錄加進(jìn) Path具體方法見 2.3。配置完成后重新打開命令提示符先where swig確認(rèn)能找到再重新執(zhí)行 nmake 命令。這次 nmake 會(huì)在 python 子目錄下生成一堆 .c 和 .py 文件如果沒有任何 fatal error說明包裝代碼生成成功。我建議你在執(zhí)行后查看一下swig/python/osgeo/目錄正常情況下里面會(huì)有_gdal.pyd的骨架文件注意此時(shí)還沒編譯成真正的擴(kuò)展還有g(shù)dal.py、ogr.py等純 Python 包裝層文件。nmake 只負(fù)責(zé)從接口文件生成 C 源碼真正的 .pyd 要靠接下來的 setup.py 編譯。3.2 編譯擴(kuò)展模塊setup.py build 與 Vcvarsall.bat 的經(jīng)典錯(cuò)誤包裝代碼生成完畢就要在swig/python目錄下編譯 Python 擴(kuò)展。先進(jìn)入該目錄cd C:\OGC\GDAL192\gdal-1.9.2\swig\python然后運(yùn)行python setup.py build python setup.py installsetup.py build的作用是調(diào)用 distutils把上一步生成的 .c 文件編譯成_gdal.pyd然后復(fù)制到build\lib.win32-2.7這樣一個(gè)臨時(shí)目錄。setup.py install則把生成的模塊和一堆 .py 文件安裝到 Python 的 site-packages 目錄里也就是C:\Program Files (x86)\Python27\Lib\site-packages\osgeo。這里幾乎所有人都會(huì)遇到unable to find Vcvarsall.bat報(bào)錯(cuò)。原因在于 Python 2.7 的 distutils 默認(rèn)去尋找 VS2008VC9的編譯環(huán)境因?yàn)?CPython 2.7 官方是用 VS2008 編譯的。而我機(jī)器上裝的是 VS2010VC10distutils 在注冊(cè)表里找不到 VS2008 對(duì)應(yīng)的 Vcvarsall.bat就直接罷工。網(wǎng)上有好幾種解法有人用 mingw我試了因?yàn)?GDAL 的 C 代碼里用了很多微軟特有的約定mingw 根本編不過果斷放棄。一個(gè)輕量級(jí)的簡單方案是設(shè)置環(huán)境變量把 VS2010 的路徑指給 VS90COMNTOOLSset VS90COMNTOOLS%VS100COMNTOOLS%VS100COMNTOOLS是 VS2010 安裝時(shí)自動(dòng)設(shè)置的系統(tǒng)環(huán)境變量指向其工具目錄比如C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools\。distutils 在找不到 VS2008 時(shí)會(huì)檢查VS90COMNTOOLS我們用這條命令把 VS2010 的工具路徑“偽裝”成 VS2008 的它就能找到 Vcvarsall.bat 了。這個(gè) set 命令只對(duì)當(dāng)前命令行窗口有效所以必須和隨后的 build/install 命令在同一個(gè)窗口里執(zhí)行。執(zhí)行 setup.py build 時(shí)控制臺(tái)會(huì)刷出大量的編譯信息其中夾著一些 warning比如宏重定義、符號(hào)截?cái)噙@些通常不影響最終結(jié)果。關(guān)鍵是看最后有沒有出現(xiàn)error C...或fatal error LNK...。我這次編譯打印了幾十條 warning嚇得我以為失敗后來發(fā)現(xiàn) install 正常import 也能用才知道那些 warning 是 GDAL 源碼里早就存在的跟我們的環(huán)境無關(guān)。所以看到 warning 別慌只要沒有硬錯(cuò)誤就可以繼續(xù)。另外如果 setup.py build 過程中報(bào)找不到 Python.h說明 Python 的 include 目錄沒設(shè)置到位。雖然 distutils 會(huì)自行定位但有時(shí) GDAL 的 makefile.vc 會(huì)在編譯選項(xiàng)中覆蓋 include 路徑此時(shí)需要手動(dòng)指定環(huán)境變量PYTHON_INCLUDE_DIR和PYTHON_LIBRARY。不過 1.9.2 的默認(rèn)配置里一般不會(huì)出這個(gè)問題我在多次嘗試中只在 1.11.0 上遇到過。3.3 install 后 import 報(bào)錯(cuò)DLL 搜索路徑與 bin 目錄的真相setup.py install 成功后在命令提示符里測試導(dǎo)入python -c import gdal如果看到ImportError: DLL load failed: 找不到指定的模塊這并不代表編譯失敗而是 Python 在導(dǎo)入osgeo._gdal時(shí)找不到 gdal192.dll。_gdal.pyd是一個(gè)動(dòng)態(tài)鏈接庫它內(nèi)部鏈接了gdal192.dll。Windows 在加載_gdal.pyd時(shí)會(huì)按 DLL 搜索順序去找gdal192.dll而默認(rèn)順序里并不包含 GDAL 編譯產(chǎn)物的 bin 目錄。解決方法是把 bin 目錄加進(jìn) Path。源碼編譯產(chǎn)物的 bin 目錄是C:\OGC\GDAL192\gdal-1.9.2\bin里面有 gdal192.dll、gdalinfo.exe 等一系列可執(zhí)行文件和動(dòng)態(tài)庫。把它加到系統(tǒng) Path 后重新打開命令行窗口再測試python -c import gdal這次會(huì)順利通過。如果你用的是 IDLE 或 Spyder配置完 Path 后必須重啟這些編輯器因?yàn)樗鼈儠?huì)緩存環(huán)境變量。我一度在 IDLE 里反復(fù) import 失敗卻在 cmd 里成功就是這個(gè)緩存原因。4. MSI 快速路線下載匹配版本、直接安裝、補(bǔ)一條 Path4.1 下載官方 MSI版本匹配 Python 2.7 和 Windows 位數(shù)的關(guān)鍵如果你不想碰編譯官方提供的 MSI 安裝包就是最省事的路。GDAL 官方有 Windows 預(yù)編譯的 MSI其中包含了 gdal192.dll、命令行工具和 Python 綁定。下載時(shí)要注意兩個(gè)匹配一是 MSI 的版本要對(duì)應(yīng) GDAL 1.9.2或你想要的 1.11.0二是 MSI 的位數(shù)要能與你的 Python 版本匹配。因?yàn)?Python 2.7 在 Win7 64 位下通常裝的是 32 位版本所以你要找標(biāo)記為win32的 MSI而不是amd64。如果裝錯(cuò)安裝過程可能正常但 import gdal 時(shí)一樣會(huì)報(bào) DLL 加載失敗因?yàn)閿U(kuò)展模塊的位數(shù)和 Python 解釋器的位數(shù)不一致。雙擊 MSI 后會(huì)進(jìn)入標(biāo)準(zhǔn)的安裝向?qū)?。我一般選擇默認(rèn)安裝路徑也就是C:\Program Files\GDAL192這個(gè)路徑后面還要用到。安裝向?qū)Ю锶绻霈F(xiàn)“Python bindings”或“osgeo”之類的選項(xiàng)一定要確保它是啟用的。有些精簡版 MSI 會(huì)默認(rèn)取消 Python 綁定那樣裝完只有核心庫Python 里并沒有 osgeo 模塊。如果你不確定可以在安裝后打開C:\Program Files\GDAL192\python目錄里面至少要有 osgeo 文件夾才算正常。4.2 安裝順序與權(quán)限先裝 Python 2.7再裝 MSI用管理員安裝MSI 安裝有一個(gè)容易被忽略的依賴順序必須先把 Python 2.7 裝好再執(zhí)行 GDAL 的 MSI。因?yàn)?MSI 里的 Python 綁定是通過掃描注冊(cè)表里的 Python 安裝信息來定位 site-packages 的如果 Python 還沒裝綁定組件就會(huì)靜默跳過。我見過有人先裝 GDAL 后裝 Python結(jié)果 GDAL 提示安裝成功可 Python 里什么都沒有只能重裝。另外MSI 安裝到C:\Program Files需要管理員權(quán)限如果你的系統(tǒng)開啟了 UAC雙擊安裝時(shí)一定要右鍵“以管理員身份運(yùn)行”否則可能在最后寫入注冊(cè)表時(shí)失敗。安裝完成后我會(huì)第一時(shí)間檢查C:\Program Files (x86)\Python27\Lib\site-packages\osgeo這個(gè)目錄是否存在。如果存在且里面有g(shù)dal.py、_gdal.pyd說明綁定已經(jīng)裝好。如果只有g(shù)dal.py而沒有_gdal.pyd說明 MSI 沒識(shí)別到 Python 的擴(kuò)展模塊多半是 Python 安裝的是 64 位而你下載了 32 位 MSI或者反過來。4.3 安裝后檢查Path 修正與 DLL 搜索順序MSI 安裝完成后打開命令行窗口輸入python -c from osgeo import gdal; print(gdal.VersionInfo())如果打印出一串版本號(hào)比如1910說明安裝成功。如果出現(xiàn)ImportError: DLL load failed: 找不到指定的模塊多半還是 Path 里沒有 gdal192.dll 的目錄。MSI 默認(rèn)把 gdal192.dll 放在C:\Program Files\GDAL192你需要把這個(gè)目錄加到系統(tǒng) Path。另外MSI 安裝的 Python 模塊在C:\Program Files (x86)\Python27\Lib\site-packages\osgeo如果這里沒有生成可能 MSI 在安裝時(shí)沒能判斷出 Python 安裝位置。這時(shí)可以手動(dòng)把C:\Program Files\GDAL192\python\osgeo復(fù)制到 site-packages 下或者重新安裝 MSI 并確保 Python 2.7 已預(yù)先安裝。即使 MSI 安裝時(shí)勾選了“Add GDAL to PATH”我也建議用where gdal192.dll再確認(rèn)一次。因?yàn)橛行┌姹镜?MSI 只把gdalinfo.exe所在的 bin 目錄加入 Path卻漏掉了gdal192.dll本身的目錄兩者雖然通常在同一目錄但偶爾有例外。執(zhí)行where gdal192.dll如果輸出C:\Program Files\GDAL192\gdal192.dll說明系統(tǒng)能找到如果提示找不到就手動(dòng)補(bǔ)路徑。4.4 源碼編譯 vs MSI我為什么兩條都留下來了我在這次安裝中把兩條路線都跑了一遍不是為了湊字?jǐn)?shù)而是它們?cè)诤罄m(xù)維護(hù)中有不同的價(jià)值。源碼編譯雖然前置條件多但你能拿到全套中間文件比如 gdalinfo.exe 可以直接在命令行用而且當(dāng)你需要改動(dòng) GDAL 的源碼做二次開發(fā)時(shí)一切都在手邊。MSI 安裝快適合只想要一個(gè)能用的 Python 包、不愿意折騰編譯的人。我把兩者的差異列成一張表你根據(jù)自己的能力邊界做選擇對(duì)比項(xiàng)源碼編譯MSI 安裝編譯耗時(shí)5-10 分鐘2 分鐘環(huán)境要求VS2010、SWIG、GEOS只需要 Python 2.7踩坑數(shù)量多但資料全少但資料零散可控性可改源碼、可調(diào)編譯參數(shù)黑盒只能裝固定版本適合人群C 基礎(chǔ)好、要做二次開發(fā)用 Python 做批處理、快速上手就我個(gè)人的習(xí)慣遇到新機(jī)器我會(huì)先用 MSI 裝一個(gè)能用的環(huán)境確認(rèn)項(xiàng)目能跑如果后面要深入 GDAL 源碼或者定制插件再回頭用源碼編譯把中間產(chǎn)物保留下來。兩條路線共享一份環(huán)境變量配置所以第一遍把 Path 弄好第二遍會(huì)順很多。另外MSI 安裝后osgeo目錄里的_gdal.pyd和gdal192.dll位置可能不同有時(shí)候 DLL 在 Program Files\GDAL192而 pyd 在 site-packages\osgeo。Python 導(dǎo)入 pyd 后pyd 會(huì)去找 DLL如果找不到就會(huì)報(bào)錯(cuò)。所以即便 MSI 安裝時(shí)添加了 Path也最好用where gdal192.dll檢查一下。5. 安裝避坑指南四個(gè)報(bào)錯(cuò)現(xiàn)場的原因與修復(fù)步驟5.1 swig.exe 不是內(nèi)部或外部命令現(xiàn)象執(zhí)行nmake /f makefile.vc python時(shí)控制臺(tái)提示“swig.exe 不是內(nèi)部或外部命令也不是可運(yùn)行的程序或批處理文件”nmake 立即停止。原因系統(tǒng)沒有安裝 SWIG或者安裝后沒把 swig.exe 所在目錄加入環(huán)境變量 Path。GDAL 源碼只提供接口文件swig 是獨(dú)立的生成器需要額外下載。解決下載 swigwin-2.10.0解壓到一個(gè)無空格路徑如 C:\swigwin-2.10.0。將C:\swigwin-2.10.0添加到系統(tǒng) Path。重新打開命令提示符先where swig確認(rèn)識(shí)別成功再重跑 nmake。5.2 unable to find Vcvarsall.bat現(xiàn)象執(zhí)行python setup.py build時(shí)distutils 報(bào) “error: Unable to find vcvarsall.bat”編譯直接終止。原因Python 2.7 的 distutils 默認(rèn)按照 VS2008 編譯的 CPython 來找編譯器。機(jī)器上裝的是 VS2010注冊(cè)表里沒有 VS2008 的 Vcvarsall.bat 路徑導(dǎo)致 distutils 放棄查找。解決用命令set VS90COMNTOOLS%VS100COMNTOOLS%把 VS2010 的工具路徑偽裝成 VS2008 的。設(shè)置后在同一窗口中重新執(zhí)行python setup.py build和python setup.py install。注意這個(gè) set 只對(duì)當(dāng)前窗口有效所以每一步都要在同一個(gè)窗口里連貫執(zhí)行。5.3 ImportError: DLL load failed: 找不到指定的模塊現(xiàn)象安裝完成后import gdal或from osgeo import gdal報(bào)“ImportError: DLL load failed: 找不到指定的模塊”。這個(gè)問題在源碼編譯和 MSI 方案中都出現(xiàn)過。原因Python 導(dǎo)入_gdal.pyd時(shí)系統(tǒng)搜索不到它依賴的gdal192.dll。這只說明 DLL 搜索路徑不完整與 Python 代碼本身無關(guān)。解決把 GDAL 的 bin 目錄加入系統(tǒng) Path。源碼編譯時(shí)是C:\OGC\GDAL192\gdal-1.9.2\binMSI 安裝時(shí)是C:\Program Files\GDAL192。加完 Path 后找出你自己使用的環(huán)境如果是命令行就重開窗口如果是 IDLE 就重啟 IDLE再試導(dǎo)入。5.4 編譯期間 error C1083: 找不到 gdal_version.h 或 gdal.h現(xiàn)象setup.py build 時(shí)輸出類似fatal error C1083: 無法打開包括文件: gdal.h: No such file or directory編譯停止。原因GDAL 的源碼中Python 綁定的編譯需要依賴核心庫的頭文件。如果 makefile.vc 里的 include 路徑?jīng)]有指向 gdal 源碼的gcore和port目錄就會(huì)找不到頭文件。常見于路徑中含空格、或者解壓目錄不是預(yù)期路徑的情況。解決確認(rèn) GDAL 源碼解壓路徑中沒有空格推薦直接放 C:\OGC\GDAL192\。然后檢查 swig\python 目錄下的 setup.py 是否有寫死相對(duì)路徑的選項(xiàng)必要時(shí)在編譯前設(shè)置環(huán)境變量GDAL_INCLUDEC:\OGC\GDAL192\gdal-1.9.2\gcore。這個(gè)坑在默認(rèn)官方源碼包中較少出現(xiàn)但我在精簡版源碼包里踩到過。6. 裝完怎么驗(yàn)證先跑 gdalinfo再寫三行 Python 讀柵格6.1 用 gdalinfo 命令行工具驗(yàn)證核心庫裝完 GDAL 后第一件事不是急著寫 Python而是先跑命令行工具。打開任意命令提示符現(xiàn)在普通 cmd 也可以了因?yàn)榄h(huán)境變量已經(jīng)配好輸入gdalinfo --version如果輸出類似GDAL 1.9.2, released 2012/10/08的版本信息說明核心庫和命令行工具都能工作。再拿一個(gè)真實(shí)的 TIFF 文件試試gdalinfo C:\your\path\test.tif在輸出里能看到影像尺寸、波段數(shù)、投影坐標(biāo)、地理范圍等元數(shù)據(jù)。如果命令找不到 gdalinfo說明 GDAL 的 bin 目錄不在 Path 中回到 2.3 補(bǔ)一遍。6.2 用 Python 讀取柵格元數(shù)據(jù)和第一個(gè)波段命令行工具正常后再驗(yàn)證 Python 綁定。寫一個(gè)十幾行的腳本from osgeo import gdal import sys # 打開柵格文件 ds gdal.Open(rC:\your\path\test.tif) if ds is None: sys.exit(無法打開文件檢查路徑和GDAL安裝) # 讀取元數(shù)據(jù) print(尺寸: {}x{}.format(ds.RasterXSize, ds.RasterYSize)) print(波段數(shù): {}.format(ds.RasterCount)) # 讀取第一個(gè)波段的數(shù)據(jù) band1 ds.GetRasterBand(1) arr band1.ReadAsArray() print(第一個(gè)波段數(shù)組形狀:, arr.shape) print(數(shù)組最大值:, arr.max())gdal.Open返回一個(gè) Dataset 對(duì)象RasterXSize和RasterYSize分別代表列數(shù)和行數(shù)。GetRasterBand(1)取得第一個(gè)波段ReadAsArray()把柵格數(shù)據(jù)讀成 NumPy 二維數(shù)組方便做統(tǒng)計(jì)和裁剪。如果這一步有輸出說明 Python 已經(jīng)成功調(diào)起底層 GDAL DLL。6.3 一個(gè)常用技巧用from osgeo import gdal不要寫import gdal很多舊教程會(huì)讓你直接import gdal但在 GDAL 1.9.2 的 Python 綁定里這個(gè)寫法會(huì)觸發(fā) deprecation_warn。更規(guī)范的是from osgeo import gdal它直接進(jìn)入真正的綁定模塊不經(jīng)過兼容層。我一開始用import gdal也跑通了但總會(huì)在控制臺(tái)看到一個(gè) FutureWarning后來改成from osgeo import gdal后干凈很多。這也算是一個(gè)容易被忽略的小細(xì)節(jié)。從那以后我每次在新機(jī)器上裝 GDAL都會(huì)強(qiáng)制走一遍 gdalinfo --version 和這個(gè)十幾行的讀柵格腳本確認(rèn)環(huán)境和數(shù)據(jù)鏈路都通了才敢繼續(xù)寫業(yè)務(wù)代碼。希望這個(gè)習(xí)慣也幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
大香蕉十区| 欧美日韩亚洲天堂网| 91露脸熟女专区| 激情网色| .精品人妻一区二区三| 欧美黄色手机在线观看| av一区二区三区 中文| 天天日少妇逼AV| 日本999精品| 成人九九| AV一起草在线| 超碰在线人妻不卡| 91色插| 盗摄女人妻在线| 国产主播福利| 97超碰免费人人性爱| 婷婷探花久久精品一区| 亚洲国产午夜真人一级片中文字幕精品黄网站 | 啊操爽品善一区二区三区| 综合色一区三区二区| 日本色日夜干| 亚洲无线码一区国产欧美国| 先锋音影AV| 大学生口爆吞精| 色一射色一射| 97视频免费在线| 乱伦图av| 超碰97丝袜| 清清一区二区三区四区不卡视频| 国产粉嫩蜜臀av一区二区三区| 午夜高清成人在线视频| 狠狠操狠狠燥| 操逼无码一区| 校园春色 欧美| 北约熟女超碰| 人妻少妇精品视频一区二区三区| 天天插夜夜爽| 男人的天堂VA| 精品人妻一区二区三区四区不卡在| 久久性生大片免费观看性| 无码天天操| 久久禁| 麻豆天美电影一区二区| 青娱乐淫乱1314| 午夜成人福利影视| 1769一区二区| 一区二区三区视频国产免费| 久久精品高清无码一区| 九九久久综合| 欧美91精品国产自产| 欧美91在线+|+欧美| 3P乱轮视频| 一区二区无码视频| 少妇一线天久久久久久| 日韩综合成人免费视频| 亚洲av噜噜噜噜噜噜| 嗯嗯啊好大| 成年女人18级毛片毛片免费观看| 亚洲 中文字幕 精品| 伊人9| 91性| 97色欧州| 乱色视频中文字幕| 亚洲性爱电影| 中文字幕日韩电影人妻| 亚洲AV成人无码一二三久久| 天美传媒av一区二区| 中文字幕一二区二三区人妻专区| 欧美十八禁视频| 大香蕉草草| 亚洲无限观看| 国产吹潮女在线观看| 91精品少妇搡搡搡| 日韩少妇无吗| 色九九综合AV| 欧美在线电影| 国产成人精品午夜福利| 一区麻豆 高清中文字幕| 又黄又爽在线观看视频| 亚洲色欲一区二区三区| 亚洲性综合| 天天插夜夜爽| 亚欧操逼片在线观看 | 久久riav中文精品| 成年人性爱日韩| 波多野42部无码喷潮在线观看| 中日韩免费看男女操逼大全| 欧美 日韩 亚洲 春色| 国产激情av女片自拍| 亚洲日韩AV视色| 久久久久久久久久久久黄色 | 国产丝袜欧美在线视频| 伊人久久大香大香线蕉中文| 超碰在线人妻不卡| 久久久九九九九| 性九九九九九九| 夜夜嗷嗷一区二区| 美女天天干| 伊人天天久久动态图| 韩国午夜理伦三级好看| 欧美性色综合网| 九久精品| 日韩欧美成人性爱在线| 91jk色拍| 国产精品一区二区三区四区五区| 国产精品自产拍在线观看社区| 91看黄片| www.狠狠| 久久尹人大香焦视| 精品亚洲成人免费在线| 又黑又大又粗| 人人操人人色网| 国产一级αv免费看片| 亚洲第一二区另类图| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 亚洲**2021在线观看| 国产曰批免费观看久久久| 久综合国内精品自在自线| 日韩天美| 舔足天天操天天射| 思思热久久成人| 第二页中文字幕| 综合久久9| 99re视频在线观看这里只有精品| 日韩精品电影| 国产一区二区三区导航| 九九碰九九爱97超| 国产乱婷婷精品二区三区| 中文字幕人乱码中文字的预防方法 | 欧美综合传媒| renqi久久久久久久久久久久| 国产传媒美日韩av| 欧美日韩色综合网| 国产AV天美传媒一区二区三区 | 亚洲区 欧美区| 96久久精品一二三区色欲| 91色夜| 欧美日韩成人在线| 天天影视亚洲| 久久9亚洲| 黄页网站成人免费| 日韩天天本| 超碰人人超在线观看| 久久亚洲中文字幕视频| 国产91丝袜 在线播放| 亚洲成人日韩小说| 亚洲av无码国产精品字幕| 性吧在线视频| 欧亚性爱啪啪| 亚洲熟女综合网| 自拍亚洲综合| 四虎视频在线观看| 日韩美女久久一区二区三区| HEYZO高无码国产精品227| 日韩欧美福利视频看看| 热热色国产一二区AV| 久久98| 综合影视国产无码| 婷婷久久久| 一中国女人毛片水真多| 最新亚洲黄色免费电影| 亚洲影视综合| 人妻熟女一区二区在线视频| 哑洲在线| 久久久久久久国产| 久久夜精品一区二区三区| 日本97久久久精品| 69超碰综合| 91粉芽高清在线一区二区| 色婷久久| 粉嫩不卡一区二区性爱| 欧美成人性爱视频大全| 99无码| 日韩免费看黄片| 色官网在线| 成人乱人伦一区二区| 久久久久亚洲AV无码专区少妇| AV一区观看| 国产精品无码久久久久2025| 日产操逼| 午夜120视频在线观看| 人人么人人操| 亚洲日韩人妻中文字幕一区| 欧洲综合色| 欧美日韩在线视频网站| 日本视频在线中文字幕| 丰满人妻一区二区三区大胸懂色 | 久久国产精品一级二级三级| 啊啊啊轻点在线观看| 啊啊啊久久| 五月婷网站| 欧美夜夜狠| 乱码熟妇人妻久久久| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 凹凸视频在线一区二区| 久操精品网| 欧洲天天在线| 亚洲欧美清纯| 久久久久久亚洲Av无码精| 中文字幕中文字幕一区二区| 亚洲天堂综合AV| 国产白领连续中出在线观看| 一起草三级AV电影在线观看| 亚州伊人色综台| 九9热伊人| 视频国产欧美在线播放| 国产日韩精品一区二区三区| 久久系列| 久久久精品成人国产| 欧美传媒一区| 91狠狠色丁香婷婷综合久久精品| 中文熟女五十乱码在线| 囯产操逼片| 少妇内射www在线观看视频| 久久久久国产精品久久久| 色色色综合网| 熟女探花啪啪| 亚洲淫乱骚妇AV| 一级做a爰片久久毛片图片| 亚洲人在线| 亚洲精品免费中文字幕| 一区二区三区看视频| 天堂种子在线www网资源| 亚洲综合888| 91免费看一区二区三区 | 91丨国产丨白浆秘 洗澡动漫| 色999亚洲人成色| 密臀在线一区尤物| 91九久| 日日噜噜夜夜狠狠视频无| 激情五月天校园春色网| 午夜精品久久久久久久99蜜桃一| 精品少妇高潮久久| 国产欧美日韩在线观看麻豆传媒公司| 欧美高清无码免费视频高清版| 97se综合网| 亚洲av综合色| 清纯唯美激情| 精品国产网站| 噜噜噜狠狠色综合| 老熟妇一区二区三区…| 啊啊啊好多水| 亚洲阿v天堂在线| 色吧 综合| 最新欧美色网| 国产精品播放| 狠久久| 大香蕉草草| 男人的天堂不卡一区二区| 国产熟妇 码视频户外直播| ji熟女.com| av亚洲天堂资源网站| 欧美有码亚洲中文字幕一区二区三区四区| 日本天天操| 欧美九九爱| 色九九九九| 亚洲脚交| 国产精品久久久| 秋霞色色影院| 在线性黄高清免费视频| 伊色综合天堂色97| 无毛精品| 激情五月综合开心五月| 女人高潮大叫一级毛片| 亚洲综合888| 欧美日韩另类字幕中文| 亚洲国产综合图区中文字幕| 无码国产Av| 日韩无码成人电影| 日本高清加勒比| 中文字幕三四区| h无码动漫在线观看| 懂色AV一区二区三区| 久偷拍欧美日韩三区| 欧美性性性| 蜜乳AV一区二区三区四| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 人妻一区二区三区熟女| 亚洲精品性爱片| 69精品人人人人| 天天影视之亚洲综合网| 国产精品亚洲一级av第二区| 天天综合,91综合永久| 人妻熟女一区二区| 国产aⅴ无码片毛片一级网站| 亚洲欧美精品一区天堂久久 | 青青操在线亚洲视频观看欧美在线| 亚洲色图片区| 再深点灬舒服灬太大了好硬好爽| 性交一区二区在线播放| 男女猛烈无遮掩视频免费软件| 人妻激情另类| 免费AV中文网在线观看| 欧美精品丝袜久久久中文字幕| 亚洲男人的天堂va亚洲男人社| 精品区国产区一区二区三区| 后入式999| 美国人人操人人操| 亚洲欧美激情小说| 国产日本熟女顶级一区二区三区视频 | 日本三级小说中文字幕| 明星性猛交ⅹxxx乱大交| 啊啊啊操一区| 日本潮催一卡操| 久偷拍欧美日韩三区| 午夜福利精品| 亚洲97资源| 国产无马av| 亚洲资源站| 嗯嗯啊啊操死我| 久久精品国产亚洲AV片多多| 天天躁日日躁狠狠狠躁| 800zy一区二区| 你想操日本小逼吗| 国产精品又黄又猛又粗| 亚洲高清男人天堂| 亚洲天堂日本| 青青11操操操操操操操操| 日韩av免费一级电影| 女人18精品一区二区三区| 欧美日韩国产中文超碰| 尤物一级在线免费观看| 欧美一区二区三区互相| 久久久一区二区三区麻豆| 91女在线观看| 少妇69中文| 亚洲欧美综合网站| 青女偷拍网| 在线五区| 亚洲色五月| 天美精品一区二区三区四区在线观看| 免费亚洲国产精品久久一区| 天堂亚洲精品| 欧美十八禁在线看| 亚洲最大黄网| 草B在线| 国产视频一区二区三区在线免费观看 | 一级久久性爱视频| 激情抓乳插进去啪啪啪日韩| 91一起操| 视频分类 国内精品| 十八禁啪啦拍视频无遮挡| 亚洲综合色男人网| 国产少妇与亚洲av| 97超碰色| 综精品久久久aaaa| 五月天春色激情网| 青青草国产盗摄一二三区| 欧美性爱一内片一区二区三区| 欧美人妻精品| 激情五月天校园春色网| 国产原创精品| 日韩无码服务区| 日韩三级在线观看mp4| 久久婷色| 91亚洲人| 超碰97久久| 久久久日本电影| 超碰在线一区二区| 污污汅18禁网站在线永久免费观看| 日B操| 日人妻视频91| av天堂影视中文在字幕在线中文| 人妻少妇精品一区二区三区| 日韩pv中文| 亚洲电影91| 97日韩超碰超碰中文字幕| www国产无码| 黑人无码一区二区| 亚洲男人的天堂一区二区| 美美91成人国产精品欧美精品久久久久久久 | 国内精品a| 色婷婷电影网| 黄色十八禁| 97啪啪| 国产 三级自拍| 久久国产精品91| 尤物视频新赏网鲜网色诱网| 天堂v无码免费视频| 黄在线| 成人女人国产| 亚洲色图A| 一区二区三区精品久久| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 三级三久久线久久99久目本WW| 另类图片五月| 久艹日日日| 亚洲少妇中文字幕网址| 99re6国产精品99re| 乱伦强奸区日韩| 欧美淫穴| 懂色av一区二区三区天美传媒| 少妇xx精品| 久久99热这里只频精品6学生| 97超碰美国| 97超碰久| 91人妻少妇| 亚洲国产麻豆一区二区三区| 91爱综合| 91性感在线| 极品尤物自安慰| 草b在线| 一区二区三区一亚洲中文字幕、综合区灬 | 精品黄色电影| 久99视频| 九九九成人| 一本一道vs波多野结衣| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 国产自制av蜜乳| 婷婷色综合| 大香蕉2017| 欧美激情中文字幕另类小说| 国模91| 国产aⅴ无码片毛片一级网站| 在线天堂999| 欧美亚洲丝袜人妻制服中文99| 易易A毛视频| 在线观看十八禁| 亚洲欧美综合| 国产无码高清操逼视频| 视频不卡中文字幕| 午夜欧美J进J出白浆流出久久久| 综合久久婷婷| 777奇米影视777四色| 岛国片在线播放| 麻豆综合一区av| 国产精品人妻无码久久久老鸭窝| 99AV| 日韩精品亚洲一二三| 久久成人午夜狠狠| 色网在线| 日逼五月天| 殴美日韩m| 动漫片子网站3黄| 色月天AV导航| 三级网站超变态精品| a人欧美综合天堂麻豆| 日韩av熟女一区二区三区成人| 大香蕉碰碰| 九月丁香婷婷| 东北老女人的激情视频| 青女在线| 亚春色色| 亚洲欧美黄| 99婷婷一区二区| 影音先锋日本一区二区| 天天综合网日韩7799| 国产精品一级片在线看| 十八禁啪啦拍视频无遮挡| 日韩久久三区| 青青草在线视频欧美| 亚洲男人综合网| AV中文在线| 少妇久久久久久久| 91成人在线| 乱论91| 97伊人| 亚洲 中文 女同| 色丁香久久| 综合色一区三区二区| 青青青青草av在线观看| 丁香五月婷婷基地| PMv在线观看| 精品欧美日韩在线观看| 激激五月| 精品人人插人人操| 涩涩这里只有精品视频| 日韩欧美中文字幕搭讪巨乳美人妻视频| 日本超碰在线国产一区| 白丝被操91| 国产九九九九九九九九| 天堂成人网| 26uuu久久| 精品午夜福利国产一区二区在线观看| 日韩人成网站在线播放| 激情六月天| 超碰综合色| 男人的天堂com| 国产毛片在线| 欧美另类自拍| 亚洲精品欧洲色| 香蕉久久AⅤ...| 亚洲图片欧美日韩| 激情情色五月天| 亚洲伊人久久综合97| 亚洲免费人妻在| 国产AV天美| 搡老女人老91二区| 亚洲欧美中文日韩视频中国语| 青青青国产| 久久久亚洲精品中文字幕人妻| 蜜臀AV秘一区翔田千里| 人妻天天夜夜爽一区二区| 本道在线| 国产综合永久精品日韩鬼片| 美女露胸露尿口| 欧美综合中文| 福利伊人玖玖国产| 熟女高潮精品一区二区| 97色色婷婷| 思思热一热婷婷热一热| 久久激情视频| 使劲用力艹少妇视频一区二区| 国产剧情在线| 91精品电影18| 91一区二区三区蜜桃| 少妇国产不卡| 久久久久亚洲熟妇熟女| 九草在线大香蕉| 九九视频黄色片| 十八禁av无码免费网站APP| 中亚精品极乱| 熟妇色99| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 中文字幕在线观看二区三区| 一本一首道人妻少妇免费久久| 久久激情视频| 丝袜美女诱惑 91 视频| 国产精品爱欲| 色臀AV| 无码操逼视频一下| 天天天肏屄肏屄肏屄欧美欧美| 天天干人人干天天日97| 一色网男人的天堂| 欧美日产国产在线成人第一区| 欧美日日人人天天| 老司机福利社视频在线观看| 国产91美女高潮| 女人 A一级| 精品无码欧美三级| 99re99| 97就爱干| 乱伦Av网| 欧美色图99| 国内精品久久人妻性色av| 午夜精品久久久99热蜜桃的功能特点| 欧美亚洲丝袜美女电影| 强歼乱伦资源网| 夜夜草天天| 啊啊好多水| 岛国色情视频在线观看| 综合色图区| 伊人国产视频| 超碰九7| WWW啪啪的com| 日韩欧美麻豆大片| 九九人人操| 久久人妻熟女一区二区| 风骚少妇视频中文字幕| 欧美激情五月天| 久草资源在线视频官方总站日韩丝袜美腿| 97ai亚洲| 一本一道波多野毛片中文在线| 熟女精品一区二区三区| 超碰到97情色| 久热在线精品免费观看| 亚洲宅男天堂| 丰满熟妇大乳做爰| 欧美日韩性爱无码| 亚洲大色堂| 久久久精品| 抽插无码高清一区| 天天干人妻| 日韩精品一区二区高清| 亚洲国产一区二区三区在线 | 日韩欧美成人性爱在线| 日韩超碰精品综合| 日本孕妇一区二区视频操逼免费看 | 亚洲色人阁| 国产在线精品偷| 韩日精品福利视频一区不卡在线免| 蜜臀久久99精品久久久| 超碰人人妻| 九九热精品视频六| 性爱1区| 夜夜夜夜爽| 亚洲成人无码影院| 久久夜夜夜| 一区不卡在线观看av| 色九月综合| 婷婷久久五月综合激情| 亚洲色吧网| 欧美 亚洲 在线| 3571色综合一区二区二区| 99999久久精| 国产超碰在线| 超碰97综合| 91美女高潮| 久久99人妖视频国产| 嫩草 我啊~嗯~在线| 亚洲日韩美女中文字幕乱| 吊色| 亚洲色欲天天人妻无码系列专区| 欧美精品亚洲精品日韩传电影| 国产色精品午夜大片| 久久久男人的天堂| 天天干天天狼在线视频| 青青青草原| 超碰人人在线| 中文视频在线观看| 国产亚卅97| 亚洲 自拍偷拍 欧美| 97热视频在线观看| 天天躁日日躁AAAXX| 伊色久人大在线| 97青青操视频| 大香蕉一区二区在线观看.| 超碰中文字幕人妻草一区| 欧美老妇曰批的视频| 男人的天堂三级| 99性爱| 99亚洲国产精品色一区二区三区| 欧美日韩婷婷中文| 国产懂色精品国产av| 91美女视频。| 亚洲情色五月天 | 久久国产精品m码| 国产夜夜操| 欧美十八禁导航成人| 97在线观看视频| 爱射综合| 黑人嘿嘿嘿超爽免费视频| 久久久涩| 佐山爱中文字幕| 亚洲成人一区二区精品| 91精品人妻一品二品三品| 96精品久久久久中文字幕| www.91逼逼.com| 欧美丝袜中文字幕07在线| 91色综合激情| 97色干| 91精品亚洲内射孕妇| 热热色国产一二区AV| 色一射色一射| 天天做日日爱夜夜爽| 国产精品电影大全| 中文字幕精品三级久久久| 久操九九九九| 亚洲精品日韩国产欧美| 激情五月综合开心五月| 久久有码视频| 好看的久久不射无码影视影院| 色玖玖| 探花一区二区三| 92一区二区| 国产欧美日产一区二区三区 - 国产欧美日 | 亚洲性刺激| 北条麻妃性愛视频| 久久久久精| 免费一级视频特黄色大片| 成人小说视频在线精品欧美| 四虎AV在线观看| 久久精品国产72国产精品福利| 色视频蜜乳| 啊啊啊啊操死我| 久久9免费视频| 黑人与人妻| 欧美性色综合网| 嗯嗯啊在线视频| 欧美精品1区2区3区| 亚洲性爱电影| 亚洲男人综合| 亚洲一区日韩精品中文字幕| 人妻天堂网| 欧美日韩妖精91com| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 久久日本熟女精品一区| 综合干干干av久久久综合网| 伊人影院中文字幕| 操久久久久久| 亚洲色五月| 人人爱操| 深爱五月婷婷| 超碰在线99| 在线看免费无码AV天堂的| 北约熟女超碰| 亚洲精品影视老司机| 尤物视频一区| 国产三级资源在线观看| 国产男女边吃边摸视频网站| 综合久久久久久久久91| 人妻性爱一区二区| 老熟女乱伦一区| 久久 国产 无码| 午夜福利国产欧美日韩夜夜| 亚洲欧洲中文日韩女优乱码| 国产亚洲精品一区二区三区| 国产午夜福利专区综合| 国产高清视频无码在线| 色y情视频免费看| 国产精品熟女九色九色蜜臀| 97在线精品观看视频| 女人被男人桶爽视频网站| 国产精品亚洲一级av第二区| 亚洲天堂人妻熟妇视频| 日本午夜操逼| 五月色网| 欧美78p| 亚洲一二三精品久久网| 99青青草国产视频| 亚洲精品一卡二卡三卡福利视频网站| 日韩不卡网操逼中文字幕日韩| 国产美女口爆吞精| 亚洲精品久久一区二区三区蜜桃臀| 91九色丨国产丨爆乳| 青女在线| 99热在线只有精品| 高清孕妇孕交 交| 免费成人自拍视频在线| 伊人网青青| 女人被男人桶爽视频网站| 中文自拍欧美影视| 夜夜爽爽爽| 美女淫穴| 亚洲图片偷拍欧美| 中国特猛少妇色xxx| 天天看天天日| 日本日逼高清| 综合色播| 久久最新视频免费观看| 土豪酒店各种姿势玩弄极品幼稚| 99999久久精| 啪啪性爱免费视频| 日亚韩精品视频二区三| 天天日少妇逼AV| 夜夜嗷嗷一区二区| 亚洲综合嫩| 成人av性爱电影在线观看| 一,爱啪啪,在线免费视频| 婷婷大香蕉| 蜜桃色院一区久久| 91精品国产91熟女| 1级黄色夫妻对换性交免费看| 26uuu国产免费观看| 久久啊哟| 丝袜视频网国产90| www久久国产精品| 唐山老熟妇露脸啪啪叫| 欧美久久九九| 欧美特黄视频网站| 亚洲一区在线观看欧洲| 久久久久国产一区二| 第二页中文字幕| 欧美日韩人妻精品一区二区三区| 麻豆国产精品午夜视频| 高清在线偷拍自拍视频| 青青草乱入乱欲视频在线观看| 热热色91| 久久老子无码午夜伦不卡| 国内操逼视频二区| 精品午夜福利导航| 日韩操人| 青青草久草AV| 国产欧美日本亚洲精品| 六九九九| 欧美伊人电影| 欧美性爱十八禁| 91美女在线看| 韩国三级色呦呦| 欧美99热| 午夜福利一区二区三区四区五区色婷婷| 日本αv| 97久久精品亚洲| 欧美色图99| 无码操逼网| 丰满搜索结果 -第18页- 久久高清无码 | 大香蕉天天看妹子| 蜜桃av色偷偷av老熟女| 五月激情在线| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 另类综合另类| 久久精品国产亚洲av水密被窝| 日韩激情中文字幕有码| 性交一区二区在线播放| 成人a大片在线观看| 国产天天看| 性暴力欧美猛交在线直播| 四季AV综合网址| 亚洲一区在线观看欧洲| 欧洲Au麻豆| 亚洲欧洲av影音| 91色综合激情| 色色网91| 91欧美另类| 日本操大逼| 91麻豆一二三区| 97精品熟女少妇一区| 欧美亚洲激情一二三| 久操网视频| 美女黄码视频午夜| 秋霞免费AV| 粉嫩久久久极品| 91超级碰碰| 日本506070| 有码人妻系列| 国产一区在线观看无码AV| 91 丝袜在线观看| 熟女人妻一区二区三区| 超碰天天去日穴| 无码9区| 亚洲精品一二牛牛| 999综合色| 91成人精品在线播放| 九九热午夜欧亚国产视频| 去干网最新版| 97超碰色色| 91麻豆天美传媒HD| 免费簧片在线观看| 熟妇人妻精品一区二区| 狼人综合婷婷激情四射| 欧美日韩另类在线播放| 人妻天天爽夜夜爽2| 狠狠色婷婷| 久久久新亚洲AV| 狠综合网| 91人妻Pr| 99热欧美| 国产精品对白内射| 密乳无码| 加勒比色99999| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 97人人模人人爽人人| 97人人色| 一区黄二区黄| 欧美日韩国产另类综合| 大香蕉在线SuP| 乱伦av国产| 97超碰精品图片| 一本正道久久熟女| 国产精品久久久久久照片| 在线观看啊啊啊啊啊| 一区二区三区在线资源| 人人妻人人爽 97人人看碰人免费公开视频| julia中文字幕在线观看| 96久久精品一二三区色欲| 精品人妻一区二区三区不卡断| 67914亚洲精品| 无码直播久久久| 超碰伊人在线| 97精品一二区| 2017av无码免费无线播| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 9997se| 日韩av女优在线免费一区| 亚洲精品久久久久毛片A片拉屎 | 国产又粗又大硬免费色网视频| 天堂伊人久久| 色99在线| 精品国产一区二区三区四区在线看 | 国产第25页在线观看| 女人久久久| 龙兴卡官方查询| 一区二区 韩日AV| 岛国毛片手机在线观看| 色图四区| 人妻丝袜肏逼| 亚洲熟妇乱女区二区三区| 中文字幕亚洲永久精品| 97天堂| 色哟哟av网址| 日本久操视频| 久草免费在线一区二区| 厕所偷拍在线| 五月婷丁香| 天天色黄色影院天天操| 屁股久久久久久| 51一区二区三区| 神马久久久久久久久久久久| 亚洲天堂中文字幕无码男同| 青娱乐国产盛宴视频| 伊人网青青| 婷婷久久久精品| 亚洲天堂日本| 天天摸天天插天天日| 女人被添高潮免费视频| 日韩综合成人免费视频| 东京热天堂网| 久久久专区| 欧美中字二区| 亚洲情色五月天 | www.99中文字幕| 国产真实子伦对白| 超碰在线91| 欧美精品亚洲精品日韩传电影| 97色爱| 亚洲熟妇丝袜在线观看| 五月天玖玖资源站| 欧美日韩亚洲一区二区在线观看| 日韩97| 淫荡网址| 欧美,亚洲,日韩,v,天堂,手机在线观看| 丝袜性亚洲| 1024亚洲中文字幕久在线看片你懂的| 激情五月婷| 免费观看网黄| www.亚洲成人一区| 搞中出久久| 大香蕉免费3| 人人人摸人人| 51国产午夜精品视频| 国产强奸无码乱伦| 青娱乐福利99| AVE乱伦| 秋霞网—男女啪啪亚洲免费体验区| 神马久久久久久久| 欧美超碰97| 91丨人妻丨国产丨丝袜| 欧美高清第一页| 98久久| 91少妇| 91被操| 午夜乱轮操逼视频免费看| 乱伦一二三| 999亚洲国产视频| 亚洲AV无码AV吞精久久久久| 亚洲国产奇米影视久久| 国产精品免费美女视频| 黄色一级视| 婷婷五月花| 九九无码久久精品视频| 一牛影视久久久一区二区三区| 97人亚洲综合字幕| 校园春色中文字幕AV| 九九亚洲色在线观看| 久久精品成人一区二区三区蜜臀| Aa东京男人的天堂| 深夜视频| 国产毛片毛片4p懂色| 人人艹亚洲| 天堂俺去俺来也www久久婷婷| 在线免费观看日韩一区| 免费一级欧美片片线观看| 久久女婷| 美国日韩黄片| 果冻国产精品麻豆成人av| 一区二区三区欧美激情| 色老汉玖玖爱| 天天日天天舔东京热 | 日韩探花精品在线视频| 亚洲 欧美 手机在线观看| 久久伊人大香蕉| 婷婷五月成人| 99r九九| 99re在线视频国产| 一卡二卡三卡| 国产一区二区免费福利片| 久草视频在线视频在线视频在线观看| 国产原创剧情在线丝袜| 亭亭丁香激情| 美国三级日本三级久久99| 亚洲熟女综合网| 国产极品粉嫩馒头一线天av| 亚洲av综合色区图片亚洲| 国产一区二区视频在线播放| 久久熟女人| 欧美成人一区二区| 夫妻天天操岛国视频| 九月激情婷婷| 日韩久久三区| 欧美中文字幕一区 | 亚洲国产一区二区三区四区国产| 中文字幕一区 二区三四五 区日 日骚| 色狠人在线99| 97日韩超碰超碰中文字幕| 国产精品亚洲天堂网址| 99色色网| 欧美激色| 嗯嗯不要视频| 天天色综亚洲91污| 天天影视激情欧美| 99re这里只有精品2| 日韩无码操逼片| 伊人AAA| 精人妻无码一区二区三区伊人直播| 亚洲欧美日韩不卡人妻| 人妻干天天| 99色色| 色香欲天天天天综合色| 91久久久亚洲| 在线 制服丝袜中出 人妻| 欧美91精彩| 日本一区二区亚洲综合| 在线综合色| 欧美aⅴ99久久黑人专区| 91青青草| 亚洲激情网| 久欲AV| 亚洲欧洲综合成人av一区| 嗯嗯啊啊视频在线看| 激情文学小说一区二区| 先锋色眉乱伦资源| 欧美 传媒 麻豆 日韩 偷拍| 91性感在线| 丁香婷婷啪啪| 熟女少妇视频| 日本一区二区成人在线| 97超碰巨乳| 最新岛国大片| 少妇一区二区三区在线观看| 91人人| 蜜臀久久99精品久久久老,,| 免费国产| 欧美顶级黄色大片免费| 黄色十八禁网站| 国产福利一区二| 91亚洲不卡一区| 九九九偷拍| 18禁的网站在线| 噜噜噜亚洲精品| 在线观看成人性爱免费小视频| 抽查国产福利主播| 亚洲成人一二三区| 日本不卡五区| 野狼激情网| 成人蜜乳小视频网站| 久久久久久久久久久久久久9999| 夜夜做夜夜爽精品视频| 乱伦AVxx| 少妇人妻激情四射| 在线观看日韩av不卡| 精品二区三四区五电影| 成人网站 免费观看| 97天天插| 综合色啪| 欧美综合天堂| http://qxhbdz.com| 91操操操操| 美女的肌被草喷水视频| 成人a大片在线观看| 免费看国产大AB| 91三级理论片播放器| 美女网站黄页| 五月丁香婷婷色| 2017天天插| 婷婷五月色| 欧美日韩国产一区二区小黄片大全| 日本精品人妻少妇一区二区| 黑人猛交| 久草草一二三四区久久| 人妻aa| 精品国产乱码久久久| 久久久久国产亚洲一区欧美色图日韩 | 立川理惠无码一区二区| 日本 情色 1区2区3区| 在线观看日韩av不卡| 男人的午夜天堂| 欧美丝袜激情| 国产成人99久久亚洲综合| 色香综合天天影视综合 | 玖玖综合色| 久久婷婷视频| 亚洲AV无码久久久国产精品| 日韩免费av片高清无码| 蜜臀久久99精品久久久久久-DVD| 青娱乐手机日韩在线视频| 国产一区二区三区不卡手机在线| 国产久久久久久久久一区二区 | 亚洲揄拍网| 国产人伦精品一区二区三区| 强奸乱伦动态污图免费 | 欧美色97| 国产午夜福利电影免费在线观看| 男人天堂一区二区| 二男一女成人A片| 成人综合网 欧美| 欧美黑人精品一区二区| 99re在线视频| julia在线观看久久| AA特级绝黄| 久久久久久亚洲精品中文字幕人妻| 欧美精品成人在线播放| 日本大香蕉综合网红本杳社区| 天色综合网| 嗯嗯啊在线视频| 亚洲最新中文字幕免费| 久久 久久国内精品亚洲| 精品对白久久不卡| 日本黄页视频在线观看| 日本网色| 国产精品无码成人精品| 91丝袜人妻| 日han少妇无码| **一级毛片国产| 精品亚洲国产成人精品| 激情小说在线视频| 少妇久久久免费| 韩日精品福利视频一区不卡在线免 | 992这里有精品| 可以在线观看的黄色网址| 天天色欧美| 91欧美少妇| 久久久内射良家| 欧美成人9797| 久久久久人妻| 国模精品一区二区三区苹果色戒| 日韩三A大片在线观看| 日本大香蕉综合网| 91美女精品| 97久久超碰国产网站| 日本色婷婷| 久久精彩视频| 成功精品影院| 国产综合操逼高清| 国产精品爽爽va在线观看98| 一牛影视成人片免费| 国产日韩无码一区二区三区久久区| 亚州欧美另类| 怡红院成人视频| 亚洲色图 图片| 国产福利夜| 国产精品高潮久久AV| 亚洲人妻熟妇三十三区| 超碰日本97美女人妻人人玩人人爱 | 亚欧操逼片在线观看 | 东北女人av| 一区=区三区视频| 欧美黑人猛交春色影视大全| 99热精品在线观看| 屌色在线97视频| AV九九| 精品久久久亚洲AV成人网站| 日韩不卡a级视频专区| 国产强奸乱伦xd| 综合五月婷婷亚洲一区| 欧美性生活免费网| 无码外流操逼视频| 日韩在线欧美精品一区二区| 国产精品亚洲色婷婷久久久| 秋霞操逼片| 午夜国产综合视频在线观看| 国产日韩手机视频在线| 东京热男人的天堂| 伊人网免费视频| 搞中出久久| 51一区二区三区| 人人色人人操在线| 激情网五月天| 久操99| 97色论| 久久久国产精品亚洲精品| 精品人妻一区春色| 欧美日韩精品久久久久东北老熟妇| 欧洲色综合| 久久99草| 国产自偷| 久久久久久久性爱| 中文字幕精品探花视频| 欲色综合| 精品一区二区三区国产| 亚洲精品天堂久久A∨51成人漫| 成人午夜小视频手机在线看| 亚洲一区二区性爱电影| 亚洲天堂综合AV| 青草香蕉网| 国语对白露脸XXXXXX | 亚洲男人天堂网站| 亚洲日韩天堂| 夜夜草我| 欧亚性爱视频免费看| 欧美在线官网|