写了个采集爬虫,采集了大概180万条URL,现在要给它平均分割成多份,然后保存文件。请问要怎么做比较好。
学习是最好的投资!
Gunakan alat yang disertakan bersama mongo untuk mengeksport ke format json atau cvs atau txt.
json
cvs
txt
ialah
mongoexport --db {dbname} --collection {collectionname} --out traffic.json
pangkalan data ialah test, collections ialah col. Data di dalam adalah seperti berikut
test
collections
col
> db.col.find().pretty() { "_id" : ObjectId("573173ce83358fa60470e0db"), "id" : 1, "name" : "adamweixuan" } { "_id" : ObjectId("573173e983358fa60470e0dc"), "id" : 2, "name" : "nicholas" } { "_id" : ObjectId("573173f383358fa60470e0dd"), "id" : 3, "name" : "test" } { "_id" : ObjectId("5731740383358fa60470e0de"), "id" : 4, "name" : "test001" } { "_id" : ObjectId("5731740a83358fa60470e0df"), "id" : 5, "name" : "test002" } { "_id" : ObjectId("5731741283358fa60470e0e0"), "id" : 6, "name" : "test003" }
Kini eksport secara sama rata ke dalam tiga fail.
# id 不大于2的 mongoexport --port 10510 -d test -c col -q '{id : {$lte:2}}' --out ./names1.txt # id 在2和4之间的 mongoexport --port 10510 -d test -c col -q '{id : {$gt:2} , id :{$lte:4}}' --out ./names2.txt # id大于4的 mongoexport --port 10510 -d test -c col -q '{id : {$gt:4}}' --out ./names3.txt
Anda boleh menulis skrip dan mencubanya.
Penjelasan: -d menentukan pangkalan data, -c menentukan koleksi, -q menentukan pertanyaan, dan format fail berikut menyokong json、cvs、txt
json、cvs、txt
Biasanya, data 180w tidak perlu dibahagikan. Prinsip untuk memilih kekunci Shard sebenarnya diterangkan secara terperinci dalam dokumentasi rasmi Jika anda ingin mengetahui lebih lanjut, anda mungkin ingin merujuknya.
Gunakan alatan mongo sendiri
Gunakan alat yang disertakan bersama mongo untuk mengeksport ke format
Formatjson
ataucvs
atautxt
.ialah
Beri saya buah berangan
pangkalan data ialah
test
,collections
ialahcol
. Data di dalam adalah seperti berikutKini eksport secara sama rata ke dalam tiga fail.
Anda boleh menulis skrip dan mencubanya.
Penjelasan: -d menentukan pangkalan data, -c menentukan koleksi, -q menentukan pertanyaan, dan format fail berikut menyokong
json、cvs、txt
Biasanya, data 180w tidak perlu dibahagikan.
Prinsip untuk memilih kekunci Shard sebenarnya diterangkan secara terperinci dalam dokumentasi rasmi Jika anda ingin mengetahui lebih lanjut, anda mungkin ingin merujuknya.