Liên hệ với chúng tôi
Chúng tôi luôn sẵn sàng hỗ trợ 24/7 bằng tiếng Anh, tiếng Nga, tiếng Trung, tiếng Việt và tiếng Bồ Đào Nha. Vui lòng điền đầy đủ thông tin vào form dưới đây và chúng tôi sẽ liên lạc với bạn sớm nhất có thể!
Các chủ đề phổ biến: Multilogin X, Multilogin 6,
-
Truy xuất token Sử dụng token tự động hóa trong không gian làm việc Truy xuất ID hồ sơ, thư mục và không gian làm việc Truy xuất ID người dùng Ví dụ về tự động hóa Selenium Ví dụ về tự động hóa Playwright Ví dụ về tự động hóa Puppeteer Đăng nhập vào Multilogin tự động Thiết lập thu thập cookie tự động Tự động khởi chạy agent Xuất chi tiết proxy từ hồ sơ Chuyển đổi danh sách proxy bên ngoài thành các tệp JSON có hỗ trợ API Câu hỏi thường gặp về tự động hóaKết nối agent Không thể khởi chạy hồ sơ hoặc kết nối với proxy Câu hỏi thường gặp về khắc phục sự cố Kiểm tra proxy Không thể khởi động Multilogin Sử dụng Multilogin trên macOS Lưu dữ liệu hồ sơ Điều tra các vấn đề về tốc độ Lỗi: Failed to get profile data Ngăn chặn agent tự động gửi tệp nhật ký Cách xử lý các vấn đề cấm
-
Hướng dẫn nhanh để bắt đầu tự động hóa trình duyệt trong Multilogin 6 CLI và API cục bộ trong Multilogin 6 Tự động hóa trình duyệt Selenium trong Multilogin 6 Tự động hóa trình duyệt Puppeteer trong Multilogin 6 Chạy Multilogin 6 trong vùng chứa Docker Câu hỏi thường gặp về tự động hóa trong Multilogin 6Lỗi: Failed to get IP data: can't connect through proxy Lỗi: Javax.crypto.badpaddingexception: pad block corrupted Trạng thái: Update in progress...Loading (1) of 2 components Không thể khởi chạy một hồ sơ trong Multilogin 6 Lỗi: Fingerprint composition failed Lỗi kết nối do các ký tự không phải là ký tự Latinh trong Windows Lỗi: Mimic/Stealthfox executable is not found Hồ sơ trình duyệt hiện trạng thái "Error" trong Multilogin 6 Lỗi JavaScript khi chuyển sang chế độ tối trong Multilogin 6 Các lỗi thường gặp và cách khắc phục trong Multilogin 6
Ví dụ về tự động hóa Selenium
Được viết bởi Jason Nguyen
Cập nhật lần cuối vào September 21st, 2024
Cách thức hoạt động
Để thao tác với driver, script thực hiện các hành động sau:
- Đăng nhập vào Multilogin X sử dụng API
- Khởi chạy hồ sơ với framework tự động hóa được chọn là Selenium
- Truy xuất cổng được sử dụng bởi hồ sơ đang chạy
- Khởi động driver Selenium trên localhost bằng cổng đã truy xuất
- Sử dụng driver để thực hiện các thao tác trên trình duyệt
- Dừng hồ sơ sau 5 giây
Trước khi bạn bắt đầu
- Hãy đảm bảo agent được kết nối để có thể khởi chạy hồ sơ.
- Cài đặt các thư viện Python sau:
- requests
- selenium
- Chèn giá trị của bạn vào các biến bên dưới trong script:
Chạy tập lệnh
- Đảm bảo rằng agent được kết nối, vì nó giúp khởi chạy hồ sơ dễ dàng
- Chạy tệp
.py
với mã tự động hóa của bạn
Theo mặc định, tập lệnh bên dưới hoạt động với Mimic. Để sử dụng nó cho Stealthfox, hãy thay thế options=ChromiumOptions()
bằng options=Options()
trong dòng sau:
driver = webdriver.Remote(command_executor=f'{LOCALHOST}:{selenium_port}', options=ChromiumOptions())
Ví dụ về tập lệnh
import requests
import hashlib
import time
from selenium import webdriver
from selenium.webdriver.chromium.options import ChromiumOptions
from selenium.webdriver.firefox.options import Options
MLX_BASE = "https://api.multilogin.com"
MLX_LAUNCHER = "https://launcher.mlx.yt:45001/api/v1"
MLX_LAUNCHER_V2 = (
"https://launcher.mlx.yt:45001/api/v2" # recommended for launching profiles
)
LOCALHOST = "http://127.0.0.1"
HEADERS = {"Accept": "application/json", "Content-Type": "application/json"}
# TODO: Insert your account information in both variables below
USERNAME = ""
PASSWORD = ""
# TODO: Insert the Folder ID and the Profile ID below
FOLDER_ID = ""
PROFILE_ID = ""
def signin() -> str:
payload = {
"email": USERNAME,
"password": hashlib.md5(PASSWORD.encode()).hexdigest(),
}
r = requests.post(f"{MLX_BASE}/user/signin", json=payload)
if r.status_code != 200:
print(f"\nError during login: {r.text}\n")
else:
response = r.json()["data"]
token = response["token"]
return token
def start_profile() -> webdriver:
r = requests.get(
f"{MLX_LAUNCHER_V2}/profile/f/{FOLDER_ID}/p/{PROFILE_ID}/start?automation_type=selenium",
headers=HEADERS,
)
response = r.json()
if r.status_code != 200:
print(f"\nError while starting profile: {r.text}\n")
else:
print(f"\nProfile {PROFILE_ID} started.\n")
selenium_port = response["data"]["port"]
driver = webdriver.Remote(
command_executor=f"{LOCALHOST}:{selenium_port}", options=ChromiumOptions()
)
# For Stealthfox profiles use: options=Options()
# For Mimic profiles use: options=ChromiumOptions()
return driver
def stop_profile() -> None:
r = requests.get(f"{MLX_LAUNCHER}/profile/stop/p/{PROFILE_ID}", headers=HEADERS)
if r.status_code != 200:
print(f"\nError while stopping profile: {r.text}\n")
else:
print(f"\nProfile {PROFILE_ID} stopped.\n")
token = signin()
HEADERS.update({"Authorization": f"Bearer {token}"})
driver = start_profile()
driver.get("https://multilogin.com/")
time.sleep(5)
stop_profile()