Недавно менял работу, проходил собеседования, 4 года проработал в ДИТе Москвы, разработчик backend.
Никакой дискриминации не почувствовал, никто про специфику госа и т.п. не спрашивал.
Коллеги аналитики тоже вполне легко новую работу нашли не в госах.
Андрей Дугин на странице в meta и сервер отдает windows-1251. В вашем примере пробовал заменить decode('windows-1251').encode('cp1251') и decode('windows-1251').encode('utf-8') - но все равно кодировка неправильная, если пытаюсь открыть/распечатать результат.
str(html) - лишнее, html и так строка - сначала без str(html) писал, но тогда возникает ошибка: TypeError: must be str, not bytes Не пойму откуда она, т.к. в примерах, как вы и написали, работает без str()
Tark: не понял вопрос про то запускается ли парсинг. Один раз точно запускается. В следующие - видимо нет. Результат сохраняется куда? результат парсинга (вывод на страницу моего сервера) меняется после перезапуска сервера, если меняется страница, которая парсится.
Попробовал открыть в разных браузерах (сначала в одном, потом не перезагружая Flask, в другом) - одно и то же. На счет генерации страницы - поищу, но мне кажется проблема в том, что модуль выполняется один раз, а потом результат берется уже из памяти.
Tark: не понимаю механизма. Когда я захожу на главную страницу: '/" - я обращаюсь к ней, Flask запускает парсинг. Когда я эту страницу обновляю - я снова к ней обращаюсь (это новый запрос GET - в логах видно). Почему парсинг снова не запускается? Как сделать чтобы он запускал?
Попробовал ради эксперимента сделать две страницы с разными (по названию) функциями, с одинаковым кодом return test.text. Зашел на первую - спарсился текст. Поменял текст на странице, откуда парсится, и зашел на вторую страницу на своем сервере - текст остался старый. Т.е. скрипт даже в новой функции не стал снова запускать модуль "например".
Tark попробовал, не работает. При изменении текста на странице, которая парсится, и последущем обновлении страницы, которую создает flask - текст не меняется. Это может быть связано с тем, что я запускаю flask на localhost?
Ещё не понятно, как устроен процесс в фласке. Когда кто-то открывает страницу на моем сервере - flask выполняет команду request по-новому обсчитывая, или один раз выполнив - сохраняет в памяти и потом берет оттуда?
Andrey из-за ошибки он раньше последней строчки вылетает, на предпоследней: image.convert("RGB").save(output, "BMP"). Т.е. до последней строки у меня интерпретатор не доходит, её изменение не влияет на ошибку.
На сколько я понимаю, PIL не дает сохранить картинку в output (буфер), т.к. ждет что картинка будет сохранена в файл? TypeError: string argument expected, got 'bytes' - типа ожидалась строка (ссылка на файл), а получены байты - с которыми save не работает?
Andrey Заменил первую строчку на from io import StringIO - чтобы работало на 3ем питоне. На предпоследнюю строку выдает ошибку:
Traceback (most recent call last):
File "C:/projects/koimage/test.py", line 15, in
image.convert("RGB").save(output, "BMP")
File "C:\Python34\lib\site-packages\PIL\Image.py", line 1682, in save
save_handler(self, fp, filename)
File "C:\Python34\lib\site-packages\PIL\BmpImagePlugin.py", line 229, in _save
o32(offset)) # image data offset
TypeError: string argument expected, got 'bytes'
Этот док я тоже читал и делал. Решение уже нашел - я тупо не установил и не запустил само mongoDB - в тех туториалах, которые я нашел - об этом явно не написали.
Это классный вариант, но вопрос "функции учителя онлайн" - оставляет за скобками. В идеале - codeacAdemy - почти полная автоматизация, сделал курс, выловил баги и твое участи уже лишнее.
Могу поделиться взглядом с другой стороны баррикад. Я никогда не работал программистом (если не считать html и примитивный css), но несколько месяцев назад загорелся научиться и стал самостоятельно изучать Python. И честно говоря, "классическое" обучение меня почти ни как не цепляет (если оно сходно с тем, что было у меня в ВУЗе с научным уклоном - психология, но не "болтательная", а как естественная наука, с кучей стат методов и т.п.).
Как я вижу, за исключением ряда ньюансов - эффективнее учиться самостоятельно, если есть мотивация и тебе это нужно для себя.
В чем мне бы помог учитель по программированию?
1) В систематизации подхода и задании направления. Для меня некоторые базовые вещи рискуют остаться в тени, а это плохо. Гуглу проще и очевиднее "задавать вопросы, в которых половина ответа" на конкретные темы и сложнее (а многие просто не догадываются/по-началу тупо не нужно) на более фундаментальные вопросы. Учитель может сбалансировать развитие.
2) Доступность и глубина взаимодействия с учителем. Самый важный момент, хотя это скорее к "репетиторству". Возможность лично обратиться с вопросом и получить оперативный развернутый ответ - серьезно ускоряет обучение и уменьшает фрустрацию.
Против Tostera, Stackowerflow, оперативность и применимость ответа выше. Т.е. понятно, если упереться рогом, то всегда найдешь объяснение, или человека который альтруистично им поделится или дойдешь сам.
Но часто эти способы дорого стоят, и обратиться к учителю было бы рациональнее (тупо дешевле чем бесплатные ответы).
3) Корректировка стиля написания кода, улучшение алгоритмов разработки программы и т.п. Те советы, которые препод даст, смотря на то, как ты работаешь.
Например, то как работая в IDE можно экономить время. Или как правильнее написать алгоритм программы (правильнее с т.з. ресурсов компа, или моего времени, или читаемости кода и т.п.)
На мой взгляд это те пункты, где бы преподаватель пригодился. А остальное - читать книги, непосредственно писать код, ставить себе цели/воплощать идеи - для этого, если есть мотивация, препод не нужен.
Это если мы не берем вариант "нужно получить свидетельство о полученном образовании" - в этом случае мотивация студентов и функции учителя - совсем иные.
а вообще, конечно, лучше всего сначала определиться с желанием использовать английский, тогда остальное будет делом техники. Если английский реально нужен будет для чтения (например в IT это зачастую неизбежно) - довольно быстро научишься читать и понимать текст. Да, первые 2-3-5 книг будут читаться как напильником по зубам, но если на этом не зацикливаться "это так тяжело, я не справлюсь, мой прогресс слишком слабый" - приемлемый уровень навыка будет обретен достаточно быстро.
Так же и с разговорной речью, письмом, слушаньем. Я вот, как уже говорил, почти не пишу (и писать на английском конечно умею, но с такими жуткими костылями, что стыдно) - просто потому что мне это не было нужно. И знаете - не особо обламываюсь по этому поводу. Да, есть ощущение "неполноценности", на фоне гордости за то, что на слух английский я воспринимаю очень хорошо и прилично читаю. Но по сути - пока навык не нужен, зачем пытаться жрать кактус... все равно скорее всего это будет сизифовым трудом.
Кстати, возможно скоро научусь писать - появилась сильная мотивация: stackoverflow. Пока что мне хватает отечественных ресурсов и тупо поиска, но чувствую что рано или поздно мне придется писать свои вопросы туда...
Ну и наоборот, если английский нужен формально, типо "я ITшник и должен знать английский", а по факту для работы знание английского не является необходимостью (в каких-то пределах можно компенсировать переведенными книгами и тупо спрашивая коллег) - то лучше забейте, серьезно. Или формально, не вкладывая много сил - получите корочку с курсов, если "знание английского" нужно как строчка в резюме.
Будет эффективнее, если вместо пустой растраты сил на изучение субъективно ненужного английского, силы будут потрачены на что-то более продуктивное. Например на чтение не охваченной переведенной/отечественной литературы по специальности. Ну а когда все прочитаете - деваться будет некуда :)
Полгода-год пожить в англо-говорящей стране, имхо, самый реактивный и верный способ. Уж если поехали и стали жить - выучите автоматом. Понятно, что далеко не всегда есть такая возможность.
Я выучил английский благодаря Lost'y. До него почти не смотрел сериалы, но на той волне - подсел. Было очень интересно смотреть, плюс обсуждать с одногрупниками. Качал с лостфильма разумеется, переводы. Довольно быстро понял, что ещё раньше (на сутки) серии выходят на забугорных трекерах, а русские субтитры появляются раньше перевода. Стал смотреть с русскими субтитрами.
Потом оказалось, что английские субтитры выходят ещё быстрее... :)
Эта довольно сильная мотивация + достаточно сильный учитель английского в школе - и я за пол-сезона сезон научился понимать на слух 50-70% речи без субтитров и словаря. Кстати учитель английского в школе хоть и был сильный - после школы я английский почти не знал и в школе едва вытягивал по оному на 4ку.
Но как оказалось (что удивительно) - школьный базис проявился, когда появилась мотивация.
Плюс научившись смотреть Lost в оригинале и начитавшись Гоблина о надмозгах я подумал, что не имеет смысл смотреть англоязычные фильмы в переводе/дубляже, который априори - производная. Стал смотреть фильмы в оригинале.
Минус моего "подхода" - в том что грамматику и письмо я никак не тренировал, на ряду с общением на английском. Естественно, пишу я на нем весьма фигово, но общаться, как оказалось, могу вполне нормально (по словам англичанина). С жутким акцентом и ошибками, наверняка, но честно говоря потребности в общении на английском у меня нет. Ну а когда появится - укрепление навыка будет опять же вопросом пары месяцев.
Так что если любите и смотрите сериалы и фильмы - просто возьмите за правило смотреть их в оригинале. Пусть с английскими субтитрами и словарем и по-началу медленно и мучительно, но это надежный и почти гарантированный путь.
Уроки не посоветую - я пробовал заниматься по Morphy (остался со школы) - очень крутой учебник. Брался несколько раз - безрезультатно. Хотя если способны себя долго заставлять - Morphy отличный выбор.
Из сервисов - классный LingvaLeo (его я правда тоже после месяца забросил, проплатив год). В нем очень классная коллекция песен/интервью/сериалов в "джунглях" на английском. Огромный плюс в том, что рядом с видео/текстом/аудио есть печатный текст, в котором можно наведением на слова сразу получить перевод.
Поверьте, это в разы легче, чем десятки раз ставить серию на паузу, искать в файле субтитров нужную строчку, и копировать её в переводчик.
Плюс разные сервисы по общению с иностранцами. У меня не очень пошло (меня хватило на месяц), но если Вы коммуникабельный и легко заводите друзей - найдите себе там друга/подругу, кто Вам будет личностно интересен (в идеале влюбиться ))). Язык в этом случае вы выучите легко и и почти без страданий/сверх усилий.
Вариант "общаюсь ради практики" - опять же, лучше отбросьте как не эффективный. Если, конечно, у Вас нет сверх способности "ботать в течении месяцев без сильного желания".
P.S. на счет русских субтитр - лучше сразу смотрите с английскими (без субтитр вообще по-началу слишком тяжело). Тут либо ЛингваЛео, либо берете файл субтитр - запускаете фильм и открываете в текстовом редакторе файл субтитр. В нем есть разметка по времени - текст искать легко. Плюс будет здорово, если у вас есть переводчик слов, который всплывающим окном дает перевод при наведении/выделении слова (вроде в AbbyLingvo была такая возможность).
Целиком пихать абзацы в переводчики - не стоит. Понимая смысл отдельных слов вы уже будете в 60-80% случаев понимать предложение. Довольно быстро вы запомните самые употребимые слова и тогда станет много легче - если понимаешь больше половины слов в предложении - смысл остальных часто можно понять из контекста (что, кстати, ускорит их запоминание).
P.S.S. на сладкое - вбейте в ютубе "Английский как по нотам". Эстетический шок гарантирован. Имеет смысл оставлять эти уроки в качестве награды себе за труды. Они на столько хороши, что их интересно смотреть даже без цели выучить язык.
Сам сталкивался с подобной проблемой. Возможно другим больше "повезло" и у них достаточно железная задница, чтобы поставить себе слабо эмоциональную, но очень рациональную цель, и тупо механически к ней двигаться.
Цель типа "я должен выучить эти принципы". Или "я должен освоить это IDE".
В моем случае такое к сожалению (или к счастью?) почти никогда не работало.
Но с другой стороны, если мне вдруг понадобилось сверстать какой-то сайт... То задница автоматически начинает магнититься к стулу перед компом. А мозг начинает думать в ключе "так, мне нужен такой дизайн, с таким функционалом". "Я не знаю как это сделать, похоже мне нужно освоить это, это и это."
Не знаю как это лучше описать, но что-то с чем-то в этом случае меняются местами. И когда мне нужны навыки, чтобы достичь цели - навыки обретаются сами собой, с интересом и удовольствием.
А когда у меня нет четкой цели - то и желания/понимания как обрести навыки - ноль.
Вот реально, у меня тоже бывали такие периоды что мне не хочется ничего создавать - ни сайт ни программу, они мне просто не нужны. Но обычно это обман, ловушка. У меня есть идеи для сайтов и для программ, не абстрактные, а личные, мне нужны эти сайты и эти программы, которые я пишу. А самообман в том, что я иногда боюсь неудачи или начинаю париться на тему "это никому не будет нужно" и т.п.
Вполне вероятно, что у Вас тоже самое. В этом случае стоит вытащить те идеи и проекты, которые Вам интересно реализовать для себя - и сделать их, без оглядки на других, сделать их такими, какими видите Вы, по собственным внутренним эталонам.
Вот реально не поверю, что у Вас не завалялось хотя бы парочки небольших идеек-потребностей. Может у ваших родителей есть небольшой бизнес, которому помог бы простой сайт? Или там девушка занимается фотографией и ей пригодится красивый сайт-портфолио.
Или, беспроигрышный вариант, тут точно угадаю - вы во что-то верите, какая-то идея занимает Вас, кажется ценной, достойной/нуждающейся в распространении. Сверстайте для неё сайт, сделайте его так, чтобы смотря на него вы чувствовали "я вложился на 100%". Пусть это будет небольшой лендинг - важна сама цель.
А остальное - навыки, понимание технологий, красота кода и т.п. - приложится автоматически. Нужные книги сами найдутся, в том что уже прочитали/просмотрели - вспомните и станете использовать полученные знания - автоматически.
Реально, попроситесь в Городские Проекты. Ваша тема им весьма созвучна. Кац регулярно пишет и двигает тему общественного и личного транспорта, проектирования дорог, переходов, транспортных магистралей. Кроме того они создают периодически сайты этой направленности - возможно Вас им и не хватает.
Никакой дискриминации не почувствовал, никто про специфику госа и т.п. не спрашивал.
Коллеги аналитики тоже вполне легко новую работу нашли не в госах.