<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # Feed 導出 > 譯者:[OSGeo 中國](https://www.osgeo.cn/) 0.10 新版功能. 在實現scraper時,最經常需要的功能之一是能夠正確地存儲被抓取的數據,這通常意味著用被抓取的數據(通常稱為“導出提要”)生成一個“導出文件”,供其他系統使用。 Scrapy隨提要導出一起提供了開箱即用的功能,它允許您使用多個序列化格式和存儲后端生成帶有已擦除項的提要。 ## 序列化格式 為了序列化抓取的數據,提要導出使用 [Item exporters](exporters.html#topics-exporters) . 開箱即用支持這些格式: > * [JSON](#topics-feed-format-json) > * [杰森線](#topics-feed-format-jsonlines) > * [CSV](#topics-feed-format-csv) > * [XML](#topics-feed-format-xml) 但是您也可以通過 [`FEED_EXPORTERS`](#std:setting-FEED_EXPORTERS) 設置。 ### JSON > * [`FEED_FORMAT`](#std:setting-FEED_FORMAT): `json` > * 出口商: [`JsonItemExporter`](exporters.html#scrapy.exporters.JsonItemExporter "scrapy.exporters.JsonItemExporter") > * 見 [this warning](exporters.html#json-with-large-data) 如果您使用的是大型提要的JSON。 ### 杰森線 > * [`FEED_FORMAT`](#std:setting-FEED_FORMAT): `jsonlines` > * 出口商: [`JsonLinesItemExporter`](exporters.html#scrapy.exporters.JsonLinesItemExporter "scrapy.exporters.JsonLinesItemExporter") ### CSV > * [`FEED_FORMAT`](#std:setting-FEED_FORMAT): `csv` > * 出口商: [`CsvItemExporter`](exporters.html#scrapy.exporters.CsvItemExporter "scrapy.exporters.CsvItemExporter") > * 指定要導出的列及其順序的步驟使用 [`FEED_EXPORT_FIELDS`](#std:setting-FEED_EXPORT_FIELDS) . 其他feed導出器也可以使用此選項,但對于csv很重要,因為與許多其他導出格式不同,csv使用固定頭。 ### XML > * [`FEED_FORMAT`](#std:setting-FEED_FORMAT): `xml` > * 出口商: [`XmlItemExporter`](exporters.html#scrapy.exporters.XmlItemExporter "scrapy.exporters.XmlItemExporter") ### 泡菜 > * [`FEED_FORMAT`](#std:setting-FEED_FORMAT): `pickle` > * 出口商: [`PickleItemExporter`](exporters.html#scrapy.exporters.PickleItemExporter "scrapy.exporters.PickleItemExporter") ### 元帥 > * [`FEED_FORMAT`](#std:setting-FEED_FORMAT): `marshal` > * 出口商: `MarshalItemExporter` ## 儲藏室 當使用feed導出時,您定義使用uri(通過 [`FEED_URI`](#std:setting-FEED_URI) 設置)。提要導出支持由URI方案定義的多個存儲后端類型。 開箱支持的存儲后端包括: > * [本地文件系統](#topics-feed-storage-fs) > * [FTP](#topics-feed-storage-ftp) > * [S3](#topics-feed-storage-s3) (需要botocore_u或boto_u) > * [標準輸出](#topics-feed-storage-stdout) 如果所需的外部庫不可用,則某些存儲后端可能不可用。例如,只有在安裝了botocore_u或boto_u庫的情況下,S3后端才可用(scrapy僅在python 2上支持boto_u)。 ## 存儲URI參數 存儲URI還可以包含在創建源時被替換的參數。這些參數是: > * `%(time)s` -在創建源時被時間戳替換 > * `%(name)s` -替換為 Spider 名稱 任何其他命名參數都將被同名的spider屬性替換。例如, `%(site_id)s` 將被替換為 `spider.site_id` 屬性為正在創建源的時刻。 下面舉例說明: > * 使用每個spider一個目錄存儲在ftp中: > * `ftp://user:password@ftp.example.com/scraping/feeds/%(name)s/%(time)s.json` > * 使用每個spider一個目錄存儲在S3中: > * `s3://mybucket/scraping/feeds/%(name)s/%(time)s.json` ## 存儲后端 ### 本地文件系統 源存儲在本地文件系統中。 > * URI方案: `file` > * 示例性URI: `file:///tmp/export.csv` > * 所需外部庫:無 請注意,對于本地文件系統存儲(僅限),如果您指定類似 `/tmp/export.csv` . 不過,這只在UNIX系統上工作。 ### FTP 這些提要存儲在FTP服務器中。 > * URI方案: `ftp` > * 示例性URI: `ftp://user:pass@ftp.example.com/path/to/export.csv` > * 所需外部庫:無 ### S3 源存儲在 [Amazon S3](https://aws.amazon.com/s3/) . > * URI方案: `s3` > * URI示例: > * `s3://mybucket/path/to/export.csv` > * `s3://aws_key:aws_secret@mybucket/path/to/export.csv` > * 所需的外部庫: [botocore](https://github.com/boto/botocore) (python 2和python 3)或 [boto](https://github.com/boto/boto) (僅Python 2) AWS憑證可以作為用戶/密碼在URI中傳遞,也可以通過以下設置傳遞: > * [`AWS_ACCESS_KEY_ID`](settings.html#std:setting-AWS_ACCESS_KEY_ID) > * [`AWS_SECRET_ACCESS_KEY`](settings.html#std:setting-AWS_SECRET_ACCESS_KEY) 還可以使用此設置為導出的源定義自定義ACL: > * [`FEED_STORAGE_S3_ACL`](#std:setting-FEED_STORAGE_S3_ACL) ### 標準輸出 進料被寫入廢料處理的標準輸出。 > * URI方案: `stdout` > * 示例性URI: `stdout:` > * 所需外部庫:無 ## 設置 以下是用于配置源導出的設置: > * [`FEED_URI`](#std:setting-FEED_URI) (強制性) > * [`FEED_FORMAT`](#std:setting-FEED_FORMAT) > * [`FEED_STORAGES`](#std:setting-FEED_STORAGES) > * [`FEED_STORAGE_S3_ACL`](#std:setting-FEED_STORAGE_S3_ACL) > * [`FEED_EXPORTERS`](#std:setting-FEED_EXPORTERS) > * [`FEED_STORE_EMPTY`](#std:setting-FEED_STORE_EMPTY) > * [`FEED_EXPORT_ENCODING`](#std:setting-FEED_EXPORT_ENCODING) > * [`FEED_EXPORT_FIELDS`](#std:setting-FEED_EXPORT_FIELDS) > * [`FEED_EXPORT_INDENT`](#std:setting-FEED_EXPORT_INDENT) ### FEED_URI 違約: `None` 導出源的URI。見 [存儲后端](#topics-feed-storage-backends) 用于支持的URI方案。 啟用源導出需要此設置。 ### FEED_FORMAT 要用于源的序列化格式。見 [序列化格式](#topics-feed-format) 對于可能的值。 ### FEED_EXPORT_ENCODING 違約: `None` 要用于源的編碼。 如果未設置或設置為 `None` (默認)它對除JSON輸出之外的所有內容都使用UTF-8,JSON輸出使用安全的數字編碼。( `\uXXXX` 序列)出于歷史原因。 使用 `utf-8` 如果您也想要為JSON使用UTF-8。 ### FEED_EXPORT_FIELDS 違約: `None` 要導出的字段列表,可選。例子: `FEED_EXPORT_FIELDS = ["foo", "bar", "baz"]` . 使用feed_export_fields選項定義要導出的字段及其順序。 當feed-export-fields為空或無時(默認),scrappy使用dicts或 [`Item`](items.html#scrapy.item.Item "scrapy.item.Item") Spider 正在屈服的亞綱。 如果導出器需要一組固定的字段(這是 [CSV](#topics-feed-format-csv) export format)和feed_export_字段為空或無,然后scrapy嘗試從導出的數據中推斷字段名-當前它使用第一個項目中的字段名。 ### FEED_EXPORT_INDENT 違約: `0` 用于在每個級別上縮進輸出的空間量。如果 `FEED_EXPORT_INDENT` 是非負整數,則數組元素和對象成員將以該縮進級別進行漂亮打印。縮進量 `0` (默認值)或負數,將把每個項目放到一個新行上。 `None` 選擇最緊湊的表示形式。 當前僅由執行 [`JsonItemExporter`](exporters.html#scrapy.exporters.JsonItemExporter "scrapy.exporters.JsonItemExporter") 和 [`XmlItemExporter`](exporters.html#scrapy.exporters.XmlItemExporter "scrapy.exporters.XmlItemExporter") ,即當您要導出到 `.json` 或 `.xml` . ### FEED_STORE_EMPTY 違約: `False` 是否導出空源(即沒有項目的源)。 ### FEED_STORAGES 違約: `{{}}` 包含項目支持的其他提要存儲后端的dict。鍵是URI方案,值是指向存儲類的路徑。 ### FEED_STORAGE_S3_ACL 違約: `''` (空字符串) 包含項目導出到AmazonS3的源的自定義ACL的字符串。 有關可用值的完整列表,請訪問 [Canned ACL](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl) 亞馬遜S3文檔部分。 ### FEED_STORAGES_BASE 違約:: ```py { '': 'scrapy.extensions.feedexport.FileFeedStorage', 'file': 'scrapy.extensions.feedexport.FileFeedStorage', 'stdout': 'scrapy.extensions.feedexport.StdoutFeedStorage', 's3': 'scrapy.extensions.feedexport.S3FeedStorage', 'ftp': 'scrapy.extensions.feedexport.FTPFeedStorage', } ``` 包含由Scrapy支持的內置提要存儲后端的dict。您可以通過分配 `None` 到他們的URI方案 [`FEED_STORAGES`](#std:setting-FEED_STORAGES) . 例如,要禁用內置FTP存儲后端(不替換),請將其放入 `settings.py` :: ```py FEED_STORAGES = { 'ftp': None, } ``` ### FEED_EXPORTERS 違約: `{{}}` 包含項目支持的其他導出器的dict。鍵是序列化格式,值是指向 [Item exporter](exporters.html#topics-exporters) 類。 ### FEED_EXPORTERS_BASE 違約:: ```py { 'json': 'scrapy.exporters.JsonItemExporter', 'jsonlines': 'scrapy.exporters.JsonLinesItemExporter', 'jl': 'scrapy.exporters.JsonLinesItemExporter', 'csv': 'scrapy.exporters.CsvItemExporter', 'xml': 'scrapy.exporters.XmlItemExporter', 'marshal': 'scrapy.exporters.MarshalItemExporter', 'pickle': 'scrapy.exporters.PickleItemExporter', } ``` 包含由Scrapy支持的內置飼料導出器的dict。您可以通過分配 `None` 到其序列化格式 [`FEED_EXPORTERS`](#std:setting-FEED_EXPORTERS) . 例如,要禁用內置的csv導出器(不替換),請將其放入 `settings.py` :: ```py FEED_EXPORTERS = { 'csv': None, } ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看