Skip to content
This repository has been archived by the owner on Sep 29, 2019. It is now read-only.

имхонет все, спасаем оценки #8

Open
wake0up0ne0 opened this issue Apr 15, 2017 · 10 comments
Open

имхонет все, спасаем оценки #8

wake0up0ne0 opened this issue Apr 15, 2017 · 10 comments

Comments

@wake0up0ne0
Copy link

Тут
https://vc.ru/n/imhonet-troubles
пишут, что имхонет кончился, а ваш скрипт, к сожалению, не работает. Возможно, дело в моих кривых руках, сам не могу разобраться что не так, опыт с питоном почти нулевой/

Есть ли шансы, что уважаемые создатели обновят скрипт?
Спасибо!

P.S.:
скрипт выводит вот что:

C:\Users\mart>python C:\Users\mart\Downloads\imhodump-master\imhodump-master\imh
odump.py bezvrednii films
INFO:imhodump.py:Загружаем ранее собранные оценки пользователя bezvrednii из фай
ла imho_rates_films_bezvrednii.json
INFO:imhodump.py:Failed loading json
INFO:imhodump.py:Собираем оценки пользователя bezvrednii в файл imho_rates_films
_bezvrednii.json
INFO:imhodump.py:Обрабатывается страница http://bezvrednii.imhonet.ru/content/fi
lms/rates/1/?page=1 ...
INFO:imhodump.py:Обрабатывается страница http://bezvrednii.imhonet.ru/content/fi
lms/rates/2/?page=1 ...
INFO:imhodump.py:Обрабатывается страница http://bezvrednii.imhonet.ru/content/fi
lms/rates/3/?page=1 ...
INFO:imhodump.py:Обрабатывается страница http://bezvrednii.imhonet.ru/content/fi
lms/rates/4/?page=1 ...
INFO:imhodump.py:Обрабатывается страница http://bezvrednii.imhonet.ru/content/fi
lms/rates/5/?page=1 ...
INFO:imhodump.py:Обрабатывается страница http://bezvrednii.imhonet.ru/content/fi
lms/rates/6/?page=1 ...
INFO:imhodump.py:Обрабатывается страница http://bezvrednii.imhonet.ru/content/fi
lms/rates/7/?page=1 ...
INFO:imhodump.py:Обрабатывается страница http://bezvrednii.imhonet.ru/content/fi
lms/rates/8/?page=1 ...
INFO:imhodump.py:Обрабатывается страница http://bezvrednii.imhonet.ru/content/fi
lms/rates/9/?page=1 ...
INFO:imhodump.py:Обрабатывается страница http://bezvrednii.imhonet.ru/content/fi
lms/rates/10/?page=1 ...
INFO:imhodump.py:Загружаем ранее собранные оценки пользователя bezvrednii из фай
ла imho_rates_films_bezvrednii.json
INFO:imhodump.py:Failed loading json
Traceback (most recent call last):
File "C:\Users\mart\Downloads\imhodump-master\imhodump-master\imhodump.py", li
ne 296, in
dumper.dump()
File "C:\Users\mart\Downloads\imhodump-master\imhodump-master\imhodump.py", li
ne 280, in dump
self.make_html(self.output_filename)
File "C:\Users\mart\Downloads\imhodump-master\imhodump-master\imhodump.py", li
ne 250, in make_html
for record in records.values():
AttributeError: 'NoneType' object has no attribute 'values'

@idlesign
Copy link
Owner

Обновил разборщик для сбора данных из раздела Фильмы. В других разделах работать, скорее всего, не будет.

Пользуйтесь.

@ku-dmitry
Copy link

А у меня чего-то на третьей странице спотыкается, похоже не нравится название фильма. Как можно починить?

INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/anarki4/content/
films/rates/5/?page=3 ...
INFO:imhodump.py:Обрабатываем "Слишком много девушек" ...
ERROR:imhodump.py:Необработанная ошибка: %s
Traceback (most recent call last):
File "imhodump.py", line 136, in dump_to_file
for item_data in self.process_url(rating, 1, True):
File "imhodump.py", line 122, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 122, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 119, in process_url
yield from self.get_rates(html, rating)
File "imhodump.py", line 69, in get_rates
year = get_meta_content('dateCreated')
File "imhodump.py", line 57, in get_meta_content
return html_details.xpath('.//meta[@itemprop="%s"]' % name)[0].get('content'
).strip()
IndexError: list index out of range
INFO:imhodump.py:Загружаем ранее собранные оценки пользователя anarki4 из файла
imho_rates_films_anarki4.json
INFO:imhodump.py:Создаём html файл с оценками: imho_rates_films_anarki4.html
Traceback (most recent call last):
File "imhodump.py", line 323, in
dumper.dump()
File "imhodump.py", line 298, in dump
self.make_html(self.output_filename)
File "imhodump.py", line 285, in make_html
'rating_rows': '\n'.join(rating_rows)
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\encodings\cp
1251.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\xe2' in position 10
4226: character maps to

@idlesign
Copy link
Owner

У фильма отсутствует дата.
Сделал обход, пробуйте ещё раз с новым кодом.

@ku-dmitry
Copy link

Попробовал. В этот раз зашёл гораздо дальше, но потом:

INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/anarki4/content/
films/rates/10/?page=7 ...
INFO:imhodump.py:Загружаем ранее собранные оценки пользователя anarki4 из файла
imho_rates_films_anarki4.json
INFO:imhodump.py:Создаём html файл с оценками: imho_rates_films_anarki4.html
Traceback (most recent call last):
File "imhodump.py", line 327, in
dumper.dump()
File "imhodump.py", line 302, in dump
self.make_html(self.output_filename)
File "imhodump.py", line 289, in make_html
'rating_rows': '\n'.join(rating_rows)
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\encodings\cp
1251.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\xe2' in position 10
4228: character maps to

@idlesign
Copy link
Owner

Ваши оценки собраны и находятся в файле .json. Ошибка происходит при попытке сформировать .html. Поведение специфично для Windows, подправил код.

Попробуйте для начала просто сформировать .html по уже имеющемуся .json файлу:

anarki4 films --html_only

В случае ошибки можете удалить .json и повторить сбор оценок.

@ku-dmitry
Copy link

Это я уже понял, почти сразу, как запостил. Спасибо большое за помощь! Сейчас проверю и отпишусь.

@ku-dmitry
Copy link

Всё отлично пересобралось из JSON.
Win 8.1 x64, Python 3.5.2 - всё ок.
Спасибо ещё раз.

@ku-dmitry
Copy link

ku-dmitry commented Apr 16, 2017

Ан нет.
Теперь снова не собирает.
Да и раньше не смог собрать даты просмотра.

c:\imhodump-master>python imhodump.py tvirl films
INFO:imhodump.py:Загружаем ранее собранные оценки пользователя tvirl из файла im
ho_rates_films_tvirl.json
INFO:imhodump.py:Собираем оценки пользователя tvirl в файл imho_rates_films_tvir
l.json
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=1 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=2 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=3 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=4 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=5 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=6 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=7 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=8 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=9 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=10 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=11 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=12 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=13 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=14 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=15 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=16 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=17 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=18 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=19 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=20 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=21 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=22 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=23 ...
INFO:imhodump.py:Обрабатывается страница http://user.imhonet.ru/tvirl/content/fi
lms/rates/1/?page=24 ...
Traceback (most recent call last):
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\site-package
s\requests\packages\urllib3\connectionpool.py", line 379, in _make_request
httplib_response = conn.getresponse(buffering=True)
TypeError: getresponse() got an unexpected keyword argument 'buffering'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "imhodump.py", line 327, in
dumper.dump()
File "imhodump.py", line 301, in dump
self.dump_to_file(self.output_filename, existing_items=existing_items, start
_from_rating=self.START_FROM_RATING)
File "imhodump.py", line 140, in dump_to_file
for item_data in self.process_url(rating, 1, True):
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 126, in process_url
yield from self.process_url(rating, page + 1, recursive)
File "imhodump.py", line 115, in process_url
response = requests.get(page_url)
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\site-package
s\requests\api.py", line 70, in get
return request('get', url, params=params, **kwargs)
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\site-package
s\requests\api.py", line 56, in request
return session.request(method=method, url=url, **kwargs)
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\site-package
s\requests\sessions.py", line 488, in request
resp = self.send(prep, **send_kwargs)
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\site-package
s\requests\sessions.py", line 609, in send
r = adapter.send(request, **kwargs)
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\site-package
s\requests\adapters.py", line 423, in send
timeout=timeout
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\site-package
s\requests\packages\urllib3\connectionpool.py", line 600, in urlopen
chunked=chunked)
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\site-package
s\requests\packages\urllib3\connectionpool.py", line 382, in _make_request
httplib_response = conn.getresponse()
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\http\client.
py", line 1197, in getresponse
response.begin()
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\http\client.
py", line 297, in begin
version, status, reason = self._read_status()
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\http\client.
py", line 258, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
File "C:\Users\Дмитрий\AppData\Local\Programs\Python\Python35\lib\socket.py",
line 575, in readinto
return self._sock.recv_into(b)
KeyboardInterrupt

@asidden
Copy link

asidden commented May 1, 2017

больше ни у кого не работает? скрипт генерит пустые файлы, линки ведут на 404

@ku-dmitry
Copy link

Так всё же. Скрипт бегал по страницам и собирал информацию из кода этих страниц. А несколько дней назад сайт положили. Так что скрипту теперь негде искать инфу.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants