�
#6�dJ � �� � d dl Z e j dk r ed� � d dlmZ nd dlZd dlmZ d dlZd dl m
Z
d dlmZm
Z
d dlmZ d d lmZ d d
lmZ d dlZd dlZ d dlZd dlT G d� d
� � ZdS )� N�ntzKWINDOWS DETECTED! PLEASE DO NOT USE THIS SCRIPT ON WINDOWS! IT'S TOO BUGGY!)�Readline)�sleep)� webdriver)�WebDriverException�NoSuchWindowException)�Options)�Observer)�FileSystemEventHandler)�*c � � e Zd Zd� Zd� Zd� Zddeded ed
edef
d�Zd
� Z G d� de
� � Zdd�Zd� Z
dd�Zd� Zd� ZdS )�
AutoReloadc � � dS )NzTEST WORKS!� r � �9/home/pc/Belgeler/AutoReloadScript/AutoReloader/script.py�testzAutoReload.test s � ��}r c � � d| _ d S )Nzhttp://127.0.0.1:80/Test/)�_root��selfs r �default_rootzAutoReload.default_root s
� �0��
�
�
r c � � d| _ d S )Nz./login.php)�_start_pager s r �
default_spagezAutoReload.default_spage s � �(����r � FT�root�
start_page�print�
handle_arg�suc �| � |sd S || _ || _ || _ t j d | _ d| _ d| _ g | _ t j � � | _
|r4| j
� d� � | j
� d� � t j
dk r| j
� ddg� � t j | j
�� � | _ t# � � | _ | j d k r| � � � | j d k r| � � � | j | _ d S )
Nr Fz--no-sandboxz
--headlessr �excludeSwitcheszenable-logging)�optionsr )r r r �sys�argv� file_name�ignore� ignoreArrr �
ChromeOptions�opt�add_argument�os�name�add_experimental_option�Chrome�driverr
�observerr r � lastEVENT)r r r r r r! �news r �__init__zAutoReload.__init__ s" � �� ��F���
�%�����
���!������
��������*�,�,���
� 0��H�!�!�.�1�1�1��H�!�!�,�/�/�/�
�7�d�?�?��H�,�,�->�AQ�@R�S�S�S��&�t�x�8�8�8��� �
�
��
��:������������r�!�!���� � � ��)����r c � � d}|d| j � d�z
}|d| j � d�z
}|d| j � d�z
}|dz
}|d z
}|d
z
}|dz
}|dz
}|S )
Nz&Default arguments for this script is:
zroot: z
zstart_page: z
zUsage: 'z$ -r <root_address> -s <start_page>'
z>-r/--root: sets the url
-s/--start_page: sets the start page
z4-l/--log: prints the file name if a file is changed
z$-h/--help: prints this help message
z^--ignore-html: won't load html files if they are changed, instead will reload the current pagezt-i/--ignore "<file(s)/path(s)>" : won't load ignored files if they are changed, instead will reload the current page)r r r'