ch-044's Introduction
ch-044's People
ch-044's Issues
ElasticSearch - Update/Delete
Розібратись як працює Update/Delete для ElasticSearch зробити приклад.
Зберегти товар в MSSQL DB і ElasticSearch
Перевірка чи товар досі існує
Якщо товар видалено, то треба маркнути його як видалений в БД.
Це має бути таск який перевірятиме існуючі товари в якійсь категорії в нашій БД з списком товарів в магазині.
Зробити прототип ElasicSearch
Enable and cnfigure EF
Список товарів
Зробити сторінку, яка відображатиме список товарів для кожної категорії.
(тільки список. нічого більше)
Робити всі запити через проксі (Tor.Net)
Знайти бібліотеку, яка шукатиме проксі сервери і робитиме всі запити через проксі щоб попередити блокування нашого ресурсу.
http://www.codeproject.com/Articles/1072864/Tor-NET-A-managed-Tor-network-library
(ProxyPoolGet)
RabbitMq
Декілька критеріїв для парсера
На одну критерію парсер повнен мати можливість брати декілька ікспаісів. Якщо при виконанні попереднього виникла помилка чи нічого не розпарсилось, то виконувати наступний. Їхній порядок можна міняти.
Додати коментарі до коду
Розібратись з HtmlAgilityPack
Написати парсер однієї категорії якогось інтернет магазину.
Категорії (верстка і порядок)
- Поправити верстку категорій відповідоно до Мішиних коментарів.
- Потрібно мати можливість впорядковувати категорії.
Підключити Log4Net
Підключити, протестувати і налаштувати Log4Net.
На кожен день має створюватись окремий файл з логами.
Час у файлі повинен зберігатись в UTC.
Розібратись з HtmlAgilityPack
Написати парсер однієї категорії якогось інтернет магазину.
Прев"ю для парсера
Додати можливість бачити як розпарсився таск.
XPATH
Дістати XPATH з iframe і передати в батьківську сторінку.
Дерево категорій
Зробити сторінку, на якій можна налаштовувати дерево категорій.
Додавання, редагування, видалення, зміна батьківської.
Для роботи з деревом можна пошукати якусь jQuery бібліотеку.
Треба поправити мапінг Category на CategoryDTO.
Завантаження сторінки
Знайти можливість завантажити любу URL сторінку і її CSS, JS, і т.д. ресурси. Та відкривати завантажену сторінку в iframe
Зробити одну connectionString
Авторизація
- Зробити сторінку логін
- Зробити сторінку логаут
- Зробити сторінку реєстрації нового користувача.
- Додати ролі адміністратора і користувача
- Зробити сторінку, на якій адміністратор може змінити роль усім іншим користувачам.
- Додати переверку на роль усім існуючим контролерам
Створення динамічної таблиці
Створення динамічної таблиці для категорії.
AutoMapper
Підключити AutoMapper і налаштувати його.
В коді додати пару закоментованих прикладів мапінга.
Знайти headless browser with javascript support
Можливі варіанти:
- PhantomJS
- WebKit .NET
- Selenium
- GhostDriver
- .NET WebBrowser
Бажано щоб була МІТ ліцензія.
Додати до нашого солюшина новий проект SiteProcessor.
В ньому має бути клас який:
- отримуватиме url і path
- завантажуватиме сторінку через headless browser і тор
- зберігатимег html в заданий path
Історія цін
Зробити історію цін.
Таблиця: ід запису, ід товару, назву товару, ціна товару, дата.
Додавання завдань в чергу окремою програмою
Таски в чергу повинна додавати окрема програма аналогічно до виконання.
Створення структур
Зробити можливість створювати структури даних.
Цілі числа / дробові числа / грошові / дати / стрічки / енами.
Розібратись з HtmlAgilityPack
Написати парсер однієї категорії якогось інтернет магазину.
Обробка помилок на сайті
Якщо хоч десь винекне помилка і для неї не існуватиме обробника, то треба щоб сайт її обробив.
Тобто користувач не побачив "страшну" помилку з логами ерора, а щоб користувачу відобразилась "гарна" сторінка з якимось повідомленням. (сталась помилка, спробуйте зайти пізніше.....)
Створити меню
Налаштування парсера
Зробити макапи
Версійність тасків
Кожен таск повинен мати дату останньої зміни.
Коли парсер отримує завдання з черги він повинен перевірити дату таска у завданні і дату таска в його контексті. Якщо у контексті старіша версія, то підгрузити новішу версію таска з БД.
Створення новго завдання
Authentication
Зробити на сайті авторизацію використовуючи C# Owin Identity.
Tor.net modify user agent
Спробуват змітини юзер агент стрічку для тора.
Зробити щоб він при кожному запиті рандомно підставляв юзер анегт віж хрома чи фаєрфокса.
Це повинно пофіксати проблему з капчою на сайтах.
Додати підтримку мовних ресурсів
На основному сайті має бути перемикач мов (українська / російська / англійська)
Вибрану мову зберігати в Cookies.
Налаштування результатів парсера
Зараз парсер може витягнути тільки текст.
Треба додати можливість витягувати URL посилання, кастомні атрибути і т.д.
Тобто біля кожного текстового поля з ікспасом повинен бути випадаючий список, в якому будуть варіанти: текст, посилання, кастомні атрибути....
Зробити скедулер завдань
Для початку тільки розібратись з Quartz.NET Scheduling Framework for .NET Platform
В понеділок розкажу що з ним робити треба буде.
Ітератор (v1)
SimpleInjector
Розібратись з SimpleInjector.
Додати до сайту. Налаштувати.
Отримати список товарів згідно з налаштуваннями
Додавання магазину
Назва, адреса, логотип.
Створення критеріїв
Зробити можливість додавання критеріїв для кожної категорії.
Критерія складається з ід, назва, опис, тип, значення по замовчуванню, префікс, суфікс
Тип - стрічка, число ціле, число дробове, час, дата
Виконання завдання
Виконати завдання і зберегти у БД.
Task менеджер
Зробити менеджер який може додавати таск до черги, витягувати таск з черги і виконувати таск.
Не дробити всю цю функціональність по різним частинам проекту так як це зроблено зараз.
Розібратись з HtmlAgilityPack
Написати парсер однієї категорії якогось інтернет магазину.
Розібратись з HtmlAgilityPack
Написати парсер однієї категорії якогось інтернет магазину.
Авторизація через соціальні мережі
Додати можливість авторизації через соціальні мережі.
Працювати на пряму з АРІ не обов"язково, можна використовувати uLogin або його аналоги.
Обов"язково додати "фейсбук", "гугл" і "контакт".
Invalid HTML
Зробити щось щоб не валідний html не був проблемою.
http://stackoverflow.com/questions/18396699/how-to-fix-html-tagswhich-is-missing-the-open-close-tags-with-htmlagilit
Термін відображення товару
Акційні товари мають обмеження по часу. Треба додати можливість знати дату закінчення акційних товарів чи їх цін.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.