2017-02-04 8 views
0

У меня был короткий трехмесячный курс по изучению Java в Java ранее (единственным проектом было кодирование игры в Судоку).scrape prices> tabulate> alert me

Я хотел бы изучить язык программирования, который наиболее популярен для задач общей автоматизации. До сих пор я взял AHK, и это помогло мне с большим количеством расширений текста/ярлыков приложений и многое другое.

Хотелось бы, чтобы продвинуться дальше и выполнить, например, следующее:

1 Перейдите на этот сайт: https://carousell.com/search/products/?query=12-35mm

2 скоблить все данные, которые содержат "Panasonic", "12-35mm" (Will трудно будет соскрести каждую страницу этих результатов?)

3 Захват цены за стол цены. Если цена вводит в заблуждении (например, $ 1 или ниже $ X 4 значения), поиск значения цен ("$) в описании товара.

результатов

4 Tabluate в Excel

-Сравнить последний результат Средней цены.

6 Если последняя цена ниже, чем средняя цена> Оповестить по электронной почте.

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

Я сузил его до Import.IO и Python; но я могу ошибаться.

Этот курс кажется полезным, но я не уверен, что он научит меня ВСЕ, что мне нужно для завершения этого личного проекта.

https://www.udemy.com/automate/

Пожалуйста, посоветуйте, спасибо!

+0

Элементы в результатах поиска имеют одинаковую структуру html. Это упрощает процесс очистки. Я уверен, что вы можете выполнить скребок, сравнение цен и автоматическую почту с помощью R или Python. Кажется, что курс будет охватывать самую важную часть, которая является скреблем. –

+0

Я не уверен, что это разрешено в соответствии с их Условиями обслуживания. Они запрещают форму автоматизированного выскабливания, и, скорее всего, это намерение запретить все выскабливание. Протектор тщательно, так как LinkedIn подал в суд на людей в прошлом году за соскабливание. Чтение ToS/T & C shld - первое, что вы делаете, когда решаете что-то царапать. – hrbrmstr

+0

@hrbrmstr это зависит от того, где вы живете. В некоторых странах действуют законы, которые соответствуют требованиям ToS/T & C LinkedIn. Для реального программирования, однако, будет трудно адаптироваться к любым изменениям на сайте. –

ответ

1

Python отлично подходит для этих видов очистки и обработки веб-страниц. Вам понадобится несколько модулей для вашей работы:

Получить страницу через HTTP (S): поскольку страница, которую вы хотите очистить, не использует Javascript для вывода необходимой вам информации, я предлагаю, чтобы большое requests было достаточно.

Разбор HTML и извлечение информации: здесь много вариантов, мой личный фаворит - BeautifulSoup. Если вы хотите копать глубже, есть question about this.

Сохраните результаты в Excel: пара модулей снова выполнит эту работу, мой любимый openpyxl. Если вам не нужно сохранять очень большие файлы, это должно быть просто отлично.

Сравнить цены: Вы можете сравнить цену прямо со своим скриптом, лист Excel работает как «база данных».

Отправка по электронной почте: вы можете отправлять электронные письма с помощью Python standard library. Это fine tutorial, как это сделать ..


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

+0

Есть ли один конкретный платный учебник, который может научить меня Python из нуля? Мне, вероятно, придется учиться с нуля, и даже связанные учебники слишком сложны для моего текущего уровня. Уроки Udemy достаточно хороши для этой цели? – curiousnotepad