- 11
- 12
Приветствую, собсна ради эксперимента решил попробовать и вот что получилось
Можно доработать код, создать цикл while и сделать проверку на hash(), чтобы скрипт производил сбор инфы когда что то добавляется или удаляется со страницы.
Кстати, принимаю реквесты в ЛС с просьбами спарсить что нибудь.
Python:
import requests
import unicodedata
from bs4 import BeautifulSoup
from selenium import webdriver
import pickle
def get_data_with_selenium(url):
options = webdriver.ChromeOptions()
options.add_argument(
'user-agent=[B]добавить свой[/B]')
options.add_argument('--disable-blink-features=AutomationControlled')
options.add_argument('--headless')
driver = webdriver.Chrome(executable_path=r"C:\Users\admin\PycharmProjects\pythonProject\chromedriver.exe",
options=options)
try:
driver.get(url=url)
#pickle.dump(driver.get_cookies(), open('cookiesarp', 'wb'))
for cookies in pickle.load(open('cookiesarp', 'rb')):
driver.add_cookie(cookies)
driver.refresh()
with open('16.html', 'w', encoding='utf-8') as file:
file.write(driver.page_source)
except Exception as ex:
print(ex)
finally:
driver.close()
driver.quit()
def main():
ss = int(input('Введите номер сервера '))
print('Происходит обратока данных, ожидайте.')
get_data_with_selenium('[URL='https://arizona-rp.com/map/%27+f']https://arizona-rp.com/map/'+f[/URL]'{ss}')
with open('16.html', encoding='utf-8') as file:
map = file.read()
soup = BeautifulSoup(map, 'lxml')
items = soup.find_all('div', class_='map-icon house-for-sale')
for x in items:
data_original_title = x['data-original-title']
title_el = BeautifulSoup(data_original_title, 'lxml')
print(title_el.get_text(strip=True, separator='\n'))
input('Press enter to exit')
#for sale in items:
#sell.append({
#'home': sale.find_all('div', class_='text-center')
# })
#print(sell)
if __name__=='__main__':
main()
Кстати, принимаю реквесты в ЛС с просьбами спарсить что нибудь.
Последнее редактирование: