Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Как вытащить ссылки из файла .json ?

Ответить
Настройки темы
Любой язык - [решено] Как вытащить ссылки из файла .json ?

Новый участник


Сообщения: 9
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здравствуйте, вопрос такой. На компе в папочке лежит ~500 тысяч файлов формата ".json", файлы имеют вид "0.json","1.json","2.json","3.json","4.json" и т.д
В каждом файле примерно такая информация.
Код: Выделить весь код
{"id":"4f01310d945b7032c500000d","id_number":17,"created_at":"2012-01-02T04:22:38.000Z","updated_at":"2015-10-08T10:14:31.6080Z","duplicate_reports":[],"first_seen_at":"2012-01-02T04:22:38.000+00:00","file_name":"17__the-great-and-powerful-trixie_wallpaper_outline_artist-megasweet","description":"","uploader":"Clover the Clever","image":"//derpicdn.net/img/view/2012/1/2/17__safe_solo_trixie_wallpaper_cutie+mark_source+needed_artist-colon-megasweet_minimalist_outline.png","score":172,"upvotes":177,"downvotes":5,"faves":111,"comment_count":3,"tags":"artist:megasweet, cutie mark, minimalist, outline, safe, solo, source needed, trixie, wallpaper","tag_ids":["artist-colon-megasweet","outline","wallpaper","safe","minimalist","trixie","solo","cutie-mark","source-needed"],"width":2400,"height":1500,"aspect_ratio":1.6,"original_format":"png","mime_type":"image/png","sha512_hash":"a10356bc74cfb6c44f945a832a74c8d869e80a4dc0d4188813c8bab4d6ead2120f0c3d7ee03b572cff69ee15476080019cacbf7570aaddf730bc79f1a0911b08","orig_sha512_hash":"a10356bc74cfb6c44f945a832a74c8d869e80a4dc0d4188813c8bab4d6ead2120f0c3d7ee03b572cff69ee15476080019cacbf7570aaddf730bc79f1a0911b08","source_url":"","representations":{"thumb_tiny":"//derpicdn.net/img/2012/1/2/17/thumb_tiny.png","thumb_small":"//derpicdn.net/img/2012/1/2/17/thumb_small.png","thumb":"//derpicdn.net/img/2012/1/2/17/thumb.png","small":"//derpicdn.net/img/2012/1/2/17/small.png","medium":"//derpicdn.net/img/2012/1/2/17/medium.png","large":"//derpicdn.net/img/2012/1/2/17/large.png","tall":"//derpicdn.net/img/2012/1/2/17/tall.png","full":"//derpicdn.net/img/view/2012/1/2/17__safe_solo_trixie_wallpaper_cutie+mark_source+needed_artist-colon-megasweet_minimalist_outline.png"},"is_rendered":true,"is_optimized":true,"interactions":[]}
Как можно из 500 тысяч таких файлов вытащить ссылки которые идут после "image" и записать их все например в блокнот, примерно по 50 тысяч ссылок в один файл?

Отправлено: 16:14, 18-10-2015

 

Ветеран


Сообщения: 1758
Благодарности: 966

Профиль | Цитировать


Extazik, Примерно так, насколько это будет производительно, у меня большие сомнения:
Код: Выделить весь код
$n = 1
foreach ($file in (get-childitem *.json)) {

    (convertfrom-json (get-content $file)).image | add-content result_$n.txt
    if (([int]$file.basename % 50000) -eq 0 ) { $n++ }

}

Последний раз редактировалось Foreigner, 18-10-2015 в 16:56.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:45, 18-10-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Забанен


Сообщения: 793
Благодарности: 260

Профиль | Цитировать


Foreigner, а Вы не допускаете возможность того, что может использоваться PS v2, где командлета ConvertFrom-Json нема? Десериализация тогда будет отличаться:
Код: Выделить весь код
Add-Type -AssemblyName System.Web.Extensions

Get-ChildItem *.json | % {$jss = New-Object Web.Script.Serialization.JavaScriptSerializer}{
  $jss.DeserializeObject((Get-Content $_.FullName))['image']
}
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:03, 18-10-2015 | #3


Ветеран


Сообщения: 1758
Благодарности: 966

Профиль | Цитировать


greg zakharov, Вопрос конечно интересный. Получается, что надо отказываться от плюшек ради обратной совместимости.
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:09, 18-10-2015 | #4


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Я думаю, ради пятисот тысяч файлов автор как-нибудь изыщет такую возможность .

Отправлено: 18:35, 18-10-2015 | #5


Забанен


Сообщения: 793
Благодарности: 260

Профиль | Цитировать


Foreigner, это смотря под каким углом смотреть, и потом имелось в виду
Код: Выделить весь код
man about_requires
Это во многом помогает избежать путаницы для начинающих какая версия PS нужна для запуска. Хотя - это риторика.
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:46, 18-10-2015 | #6


Новый участник


Сообщения: 9
Благодарности: 0

Профиль | Отправить PM | Цитировать


Большое спасибо все работает. Только вот в блокнот ссылки записываются не совсем по порядку, т.е 1, 10, 100, 101. Если возможность сделать что бы было 1, 2, 3 сделайте пожалуйста, если нет, то это не критично.


Второй же вариант во время выполнения все ссылки пишет в консоли но в блокнот их не записывает, ну здесь мне кажется я что то не так делаю.

Отправлено: 12:20, 19-10-2015 | #7


Ветеран


Сообщения: 1758
Благодарности: 966

Профиль | Цитировать


Extazik,
Код: Выделить весь код
foreach ($file in (get-childitem *.json | sort { [int]$_.basename })) { ...
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:09, 19-10-2015 | #8


Новый участник


Сообщения: 9
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо

Отправлено: 14:14, 19-10-2015 | #9



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Как вытащить ссылки из файла .json ?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Помогите вытащить изображение из файла. 4uber Цифровое изображение 0 21-08-2015 18:54
[решено] как вытащить часть страниц из файла djvu vanoman Хочу все знать 1 03-10-2014 09:30
Разное - Помогите вытащить из этого сайта только ссылки Dr. Comp Программирование и базы данных 10 02-08-2013 14:02
Прочие БД - вытащить информацию из DBF файла и записать в TXT файлик garanov Программирование и базы данных 5 23-05-2012 12:45
.NET - [решено] C#: Проигрывание звука. Как вытащить тэги из mp3 файла? Digital_thug Программирование и базы данных 5 31-08-2010 22:14




 
Переход