• Закладки Firefox - чем обрабатывать, если их 'много', ПК, ведь, подвисает?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Вопрос требует уточнения. Попробую сделать предположение, что речь идет про открытые вкладки. Если это так, то автор не умеет настроить процесс работы за компом. Много открытых вкладок это ЗЛО!

    Процесс работы за браузером прост:
    0. Работа с бразером начинается с чистого листа. Нет ни одной открытой вкладки!
    1. Открывай и гугли то, что касается задачи
    2. Если нашел что-то по делу и тебе это кажется полезным и для будущего использования, то добавь в закладки
    3. Все что не нужно безжалостно закрывется
    4. В конце дня или после решения задачи закрывай все открытые вкладки. То что надо записано в закладки или в комментарии к задаче в баг-трекере

    Если это не так, то получаешь доп.инструмент для развития прокрастинации. Оно тебе надо?
    Ответ написан
    Комментировать
  • Как учиться новому после рабочего дня?

    sim3x
    @sim3x
    0. Начать следить за своим состоянием - понять, когда у тебя пик трудоспособоности
    1. Сделать приоритет - обучение или работа
    2. Научиться спать мало
    3. Научиться спать по 30 мин для разделения между учебой и работой
    4. Привыкнуть к мысли, что ето надолго (навсегда), те мотивация не при чем.
    Твой новый график - ето твой новый стиль жизни
    5. Заняться спортом, для улучшения кровообращения
    6. Изучить техники улучшения запоминания
    Ответ написан
    11 комментариев
  • Как учиться новому после рабочего дня?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    1. 9 часов. Это уже ошибка. КЗОТ писали не дурни. 8 часов достаточно для работы, если человек не чаи пьет
    2. Пересмотрите процесс работы. По приходу на работу сначала делать самые важные. Прошу прочесть внимательно: сначала важные, а только потом срочные и другие. Отличие важных от срочных в том, что одни, как правило, делаются разово и про них забываются, а другие хоть и не срочные, но они влияют стратегически.
    3. Уделяйте время на то, чтобы подумать над "светлым будущим", т.е. создать\актуализировать список страгеческих целей и задач
    4. Делайте утром зарядку. Растяжку, отжимания, приседания. Это влияет на энергетику в организме
    5. Делайте перерывы во время работы.
    6. Чаще пейте воду
    7. Займитесь спортом. На своей шкуре опробовал и четко знаю то, что до занятия плаванием делал меньше, чем сейчас
    8. Окружите себя теми, кто куда-то стремится. Это не значит что надо всех других послать в Южную Америку на оз. Нахой. Это значит, что надо чаще общаться с одним типом людей и меньше с другим
    9. Стремитесь работать на результат, а не подсчет "жопочасов". В дальнейшем ставьте работодателю на собеседовании вопрос "Вам нужны жопо-часы или результаты?". Старайтесь выявить жмотов. Если вы вдруг справились не за 5, а за 4 часа, а работодатель жмотится и боится выделить время на самообучение сотрудника, хотя эти же знания будут применены при решении рабочих задач, то уходите от такого работодателя!

    Не смотря на то, что возникает соблазн прочесть еще одну главу в книге или что-то попрограммировать в ущерб занятиям спортом не стоит этого делать! Спорт обогащает энергетикой! При нём много чего развивается. К примеру из физических качеств развиваются выносливость и мышцы, а среди психологических стрессоустойчивость и упорство.

    После работы лучше тупить. Мозг должен "отдыхать". То есть заниматься структуризацией, обработкой того, что произошло за день.

    Старайтесь избегать рывко-образной работы. Все должно быть стабильно. Пусть даже небольшими кусками работы, но стабильно и бессбойно!
    Ответ написан
    6 комментариев
  • Как ловить ошибку сервера при парсинге?

    @12ss
    1. Можешь ссылки открывать в новых вкладках. Сделай несколько попыток открыть ссылку в новой вкладке с проверкой, нет ли там ошибки. Примерно так:
    main_window = driver.current_window_handle
    #open the link in a new tab
    clickable_element.send_keys(Keys.CONTROL + Keys.RETURN)
    #switch to that tab
    driver.find_element_by_tag_name('body').send_keys(Keys.CONTROL + Keys.TAB)
    driver.switch_to_window(main_window)
    #close the tab
    driver.find_element_by_tag_name('body').send_keys(Keys.CONTROL + 'w')
    driver.switch_to_window(main_window)

    2. Можешь открыть второе окно браузера, я имею ввиду new instance, и работать с ними параллельно. Во втором окне открывать все ссылки.
    Ответ написан
    1 комментарий
  • Как парсить mysql базу при помощи python3?

    @kgbplus
    1. Прочтите вот эту книгу https://dmkpress.com/catalog/computer/programming/...
    У вас отпадет большая часть вопросов.
    2. По сути вопроса:
    try:
        cursor.execute("SELECT * FROM index WHERE complete = FALSE")
    except Exception as e:
        print(e)
        return None

    Выбрал, что еще не скачано

    import requests
    session = requests.Session()
    
    rows = cursor.fetchall()
    for row in rows:
        print("open %s"%row[1])
        try:
            req = session.get(row[1])
    #скачал что надо, обработал
        except AttributeError as e:
            print(e)
            return None


    здесь скачиваем, вытаскиваем нужные данные

    try:
        cursor.execute("INSERT INTO pages (fields) VALUES (%s)", ("что там напарсил",))
    except Exception as e:
        print(e)
        return None


    Парсим и записываем в базу

    try:
        cursor.execute("UPDATE index SET complete = TRUE WHERE id = %s",(row[0],))
    except Exception as e:
        print(e)
        return None


    Отмечаем, что удалось скачать

    db.commit()
    Завершаем транзакцию

    Ход мыслей примерно такой. Код для postgres, для мускула может немного отличаться.
    Ответ написан
    1 комментарий
  • Как парсить многоуровневые формы?

    angru
    @angru
    Если элементы селектов могут произвольно комбинироваться между собой, т.е. каждый с каждым, то все очень просто, получаем данные формы, не важно как, простой или ajax-запрос, комбинируем все элементы, затем отправляем запрос для каждой комбинации. кусок кода чтобы понять принцип:

    print([[x, y, z] for x in range(3) for y in range(3) for z in range(3)])
    
    # ну или на привычных циклах
    res = []
    
    for x in range(3):
        for y in range(3):
            for z in range(3):
                res.append([x, y, z])
    
    print(res)


    Если же элементы комбинируются по определенным правилам, нужно строить какой-нибудь граф комбинаций.
    Ответ написан
    1 комментарий
  • Как парсить многоуровневые формы?

    alekciy
    @alekciy
    Вёбных дел мастер
    Значения для Select2 зависят от выбранного option в Select1? Значения Select3 зависят от выбранного option в Select2? Можно тупо методом банального перебора.
    Ответ написан
    Комментировать
  • Как парсить многоуровневые формы?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    работа с AJAX +
    While - если не можешь
    For - если можешь
    подобрать параметры
    Ответ написан
    1 комментарий
  • Как не засыпать при чтении?

    @NE_NEO
    новичок
    Читаю книгу "Изучаем C#" 3-е изд. Стиллмен Э., Грин Дж.. В ней как раз применяются методики заставляющие мозг воспринимать книгу как "нечто важное" и отключать блок против лишней информации. Все бы книги так писали!)
    С 27 по 30 описаны методики обмана мозга, чтобы он воспринимал книгу как важное и не огораживался от нее. Можете самостоятельно попробывать применить их.
    На 31 странице 10 советов как увеличить восприимчивость к информации из книги.
    Ответ написан
    1 комментарий
  • Как тестировать верстку?

    В Яндексе мы разработали два инструмента:
    - gemini для модульного тестирования вёрстки скриншотами; сравниваются отдельные блоки с эталонными изображениями; есть отдельный удобный инструмент для снятия и обновления эталонов — gemini-gui
    - hermione для функционального тестирования

    Оба инструмента используют WebDriver API, при помощи которого ходят в Selenium Server или Appium. Умеют обходить проблемы стабильности (повторное выполнение тестов), запускать тесты максимально параллельно (для скорости; гибко настраивается), строить понятные отчёты.

    Этими инструментами уже тестируются SERP (страница поисковой выдачи), Яндекс Картинки, Яндекс Видео, Яндекс Новости и другие сервисы.
    Ответ написан
    1 комментарий
  • Что должен знать SQL разработчик?

    @Oraclist
    Прежде, чем развивать компетенции в какой-то конкретной технологии СУБД, надо сначала прокачаться в теории БД.
    Что такое множества. Операции над множествами. Сущности (поля, кортежи, таблицы, индексы, последовательности, транзакции и т.д.). Связи таблиц (виды и типы связей). Доступ к данным и т.д.
    А уже потом выбирать или не выбирать конкретную технологию.

    А то бывает приходят люди с опытом PLSQL, вроде и код пишет и стандартные функции знает.
    А про левое/правое соединение ни гугу.

    Добавлено: про нормальные формы забыл еще написать
    Ответ написан
    2 комментария
  • Как научиться делать сортировки любой сложности в JavaScript?

    deksden
    @deksden
    Enterpreneur
    Маленький совет. Вместо сортировки большой структуры данных (типа массива объектов) можно сделать и сортировать вспомогательный массив индексов. В начальном состоянии массив состоит из элементов 0,1,2,3,... - по числу элементов оригинального массива. В ходе сортировки сортируются не оригинальный массив, а вспомогательный - но операторы сравнения используют оригинальный массив.

    В чем профит? Меньше перемешивается память добавлением или удалением элементов массива.
    Ответ написан
    1 комментарий
  • Почему скрипт запущенным браузером выдает таймаут, а из консоли работает отлично?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    потому что у web сервера (nginx/apache) есть свои таймауты. Для вашей задачи вооружитесь очередями (beanstalkd, gearman, etc).
    Ответ написан
    2 комментария
  • Меньше стек технологий, больше шанс устроиться на удаленную работу?

    creativeworm
    @creativeworm
    В дополнение ответа Пума Тайланд :
    API HH
    В частности нужны методы: Просмотр вакансии и Поиск по вакансиям. Для подсказок и разных написаний есть Подсказки по ключевым словам поиска вакансий.
    Дел на 2 часа и потом сможете провести любой анализ в любом срезе по любому городу или району/метро.
    Для реализации может потребоваться базовое знание PHP и опыт работы с curl
    Ответ написан
    Комментировать
  • Меры предосторожности при парсинге на Python?

    el777
    @el777
    Если парсить всерьез, то я рекомендую обратить внимание на scrapy - шикарный фреймворк на питоне для парсинга сайтов.
    Задачу в заголовке можно будет решить без говнокода.
    Итого: 1 страница красивого кода, за 57 секунд в 16 потоков загружает 345 страниц с веблансера и выдает 3420 проектов.
    Ответ написан
    3 комментария
  • Меньше стек технологий, больше шанс устроиться на удаленную работу?

    @mletov
    >>>что он будет и верстать, и пару cms знать, и не один framework, и PS, и сервер настроит, и js, и webpack, "и на >>>дуде игрец". Понимаю, что со временем разработчик "обрастает" знаниями и навыками, описанными выше, но на >>>начальном уровне зачем такое?

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

    Вот есть суперкрутой спец по PHP, знает только PHP ну и фреймворки. Он вполне может сказать работодателю, что ему делать со своими требованиями Photoshop, js, верстки и т д.

    Или вот есть dba программист, он сидит по уши в своих хранимых процедурах, индексах, триггерах и трехэтажных sql запросах, и не сильно парится, что там у коллег, например, какие там трудности у html-верстальщика.

    Но чтобы так было, вы должны быть действительно СУПЕРспецом.
    А пока вы на начальном этапе, старайтесь разобраться со всем, хотя бы на базовом уровне.

    PS Все выше написанное не общее правило, а скорее тенденция. И вовсе не означает, что крутые узкие спецы - это задорновские врачи, специализирующиеся "по левой ноздре".
    Любой сильный PHP программист наверняка и верстку может подправить, и sql запрос написать, просто на уровне его проектов это редко бывает нужно, т к в комманде узкая специализация.
    Ответ написан
    Комментировать
  • Меньше стек технологий, больше шанс устроиться на удаленную работу?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    IT это область с высоким порогом входа, поэтому минимум знаний в ней гораздо выше чем в большинстве других профессий. Как ни старайтесь, но вы не сможете ужаться до комфортного для вас минимума. Стоит задуматься, действительно ли вам так нужно IT - я видел очень много людей, которые напрасно потратили кучу денег на всякие курсы, пересидели в обучающих видео, накупили самых крутых книжек, но работают менеджерами по продажам, потому что не осилили.

    Или вы перестаете выискивать самую простенькую вакансию (на которую вдобавок конкурс по 50-100 человек на место, среди которых всегда будет кто-то лучше), и нормально изучаете технологии для выполнения простых задач на фрилансе, или которых достаточно для популярных вакансий в вашем городе, или пробуете свои силы в другой области.
    Ответ написан
    1 комментарий
  • Меры предосторожности при парсинге на Python?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    хороший способ - запустить wget, если он выкачает весь сайт - он однопоточный, то защита там неособо
    еще фишка - прикинуться Гуглботом, поверьте на слово - оочень немногие проверяют бота, особенно если с ВПС в США парсить
    для ВК и прочих, где царствую спамеры - защита будет всегда, границы - ищите
    заголовки - см https://pypi.python.org/pypi/fake-useragent/0.1.2
    Ответ написан
    7 комментариев
  • Меры предосторожности при парсинге на Python?

    Иногда проще наоборот настроить парсер в 10 потоков и спарсить всё за 30 минут пока админы не опомнились чем растягивать это хз на сколько ))
    Ответ написан
    Комментировать