Potrzebne jest wykonanie dla konfiguracji połączenia Solomono + SalesDrive CRM. Zadanie: skonfigurować na stronie zbieranie identyfikatorów reklamowych i danych o odwiedzającym, aby następnie te dane można było powiązać z zamówieniem w CRM. Co należy zrobić: Skonfigurować skrypt przez gtm lub wykorzystać wbudowane możliwości Solomono, jeśli są ukryte pola / mechanizm przechowywania danych reklamowych. Zbierać dane typu: gclid, utm_source, utm_medium, utm_campaign, user_agent itp. Przechowywać te dane razem z zamówieniem na stronie, jeśli to możliwe. Lub przekazywać te dane do SalesDrive CRM razem z zamówieniem lub osobno przez API/webhook. Doprowadzić zadanie do momentu, gdy dane o kliknięciu reklamowym będą widoczne w CRM w zamówieniu . Plusem będzie doświadczenie z Solomono, SalesDrive, GTM, integracjami API/webhook. Celem zadania jest, aby każde zamówienie w CRM zawierało informację, z jakiego kliknięcia reklamowego / źródła pochodzi klient.
Oferty ukryte
Aktualnie brak ofert
Oferty ukryte
Oferty ukryte
-
Maksim Kostenko 20 listopada 2024Для створення автоматизованого скрипта, який виконує описані в технічному завданні (ТЗ) сценарії, слід використовувати мови програмування та інструменти, що підтримують веб-автоматизацію та симуляцію поведінки користувача. Наприклад, Python у поєднанні з бібліотеками Selenium, Playwright, а також антидетект браузерами.
Загальні рекомендації щодо реалізації
1. Інструменти та бібліотеки:
Selenium / Playwright для автоматизації взаємодії з вебсайтами.
FingerprintSwitcher / Multilogin для створення унікальних профілів браузера.
HTTP-проксі (з IP-обміном) для забезпечення унікальних IP-адрес.
SQLite / PostgreSQL для збереження даних користувачів і результатів роботи.
2. Архітектура:
Модульність: кожен сценарій реалізується окремим модулем.
Конфігураційні файли для зберігання параметрів (IP, проксі, дані користувача).
Логування: запис дій у форматі JSON із збереженням звітів.
CLI: інтерфейс для запуску та моніторингу скриптів.
3. Алгоритми імітації:
Додати функції для випадкових рухів миші, затримок між кліками, прокрутки сторінок.
---
Приклад реалізації сценарію реєстрації нового користувача на Python
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
import time
import random
import json
import requests
# Завантаження конфігурацій
with open('config.json', 'r') as file:
config = json.load(file)
# Налаштування антидетект-браузера
def configure_browser():
options = webdriver.ChromeOptions()
options.add_argument(f"--proxy-server={config['proxy']}")
options.add_argument("--disable-blink-features=AutomationControlled")
return webdriver.Chrome(options=options)
# Імітація реальної поведінки
def simulate_human_interaction(driver):
actions = ActionChains(driver)
for _ in range(random.randint(5, 15)):
x, y = random.randint(0, 500), random.randint(0, 500)
actions.move_by_offset(x, y).perform()
time.sleep(random.uniform(0.1, 0.5))
# Реєстрація нового користувача
def register_user():
driver = configure_browser()
try:
driver.get(config['registration_url'])
time.sleep(2)
simulate_human_interaction(driver)
# Заповнення форми
driver.find_element(By.NAME, "username").send_keys(config['user_data']['username'])
driver.find_element(By.NAME, "email").send_keys(config['user_data']['email'])
driver.find_element(By.NAME, "password").send_keys(config['user_data']['password'])
time.sleep(random.uniform(1, 3))
simulate_human_interaction(driver)
driver.find_element(By.ID, "register_button").click()
time.sleep(5) # Затримка для завершення процесу
print("Реєстрація завершена")
finally:
driver.quit()
if __name__ == "__main__":
register_user()
---
Особливості реалізації інших сценаріїв
1. Перехід за рекламними посиланнями:
Використання динамічних селекторів для вибору посилань.
Аналіз трафіку (наприклад, через DevTools Protocol).
2. Поповнення балансу:
Інтеграція з платіжними системами (імітація вводу карткових даних).
Збереження результатів транзакції.
3. Обробка помилок:
Реалізація механізму повідомлення через вебхуки чи електронну пошту.
Тестування
Перед запуском на реальних сайтах необхідно протестувати кожен сценарій на тестових середовищах або локальних серверах.
Aktualne zlecenia dla freelancerów w kategorii Parsowanie danych
Potrzebny doświadczony programista 1C do jednorazowej migracji danych z 1C do nowego systemu CRM. Konieczne jest wykonanie eksportu danych z 1C z zachowaniem wszystkich powiązań między encjami: produkty, klienci, przychody, faktury, stany, historia ruchu towarów oraz inne słowniki. Format eksportu może być JSON, SQL lub inny wygodny format do dalszego importu. Główne wymaganie — zachowanie struktury danych oraz wszystkich powiązań między dokumentami a obiektami, aby dane mogły być poprawnie przeniesione do innego CRM bez utraty informacji. Doświadczenie w migracji danych między 1C a systemami zewnętrznymi będzie dodatkowym atutem. Nie trzeba migrować do innego CRM, wystarczy dać plik lub stworzyć funkcjonalność, aby przy kliknięciu plik zrzutu był zapisywany lokalnie. Wszystko prowadzę lokalnie, więc trzeba będzie pracować przez AnyDesk lub coś innego. Nie znam cen za taką pracę, więc proszę o propozycje.
Potrzebny specjalista do pisania parserów, który będzie w stanie obejść CLOUDFRAME. Parsowanie produktów odbywa się z witryn z autoryzacją. Jest 10+ donorów o różnym stopniu trudności, z różnym poziomem ochrony. Parsowanie produktów odbywa się z witryn z autoryzacją. Parsuje dane do gotowej bazy danych Mysql + zdjęcia na serwer. Należy napisać parser zgodnie z zadaniami opisanymi w specyfikacji technicznej i dostosować dane do istniejącej bazy danych, aby zapewnić pełną funkcjonalność na stronie. Specyfikacja techniczna oraz przykład donora na żądanie. Nie rozważamy parserów desktopowych ani C#.
Trzeba stworzyć bota na Telegram, który będzie monitorował ogłoszenia na trzech stronach z wynajmem mieszkań (olx, lun, rieltor.ua) i wysyłał je w sposób zorganizowany na Telegram
konieczne jest zorganizowanie sposobu zbierania nowo utworzonych FOP-ów oraz, jeśli to możliwe, TOW. czy to ma być parsowanie, czy coś innego - powiedzcie, jaki to ma być sposób