added info
parent
3bedab974b
commit
393cfb2b2d
81
README.md
81
README.md
|
@ -1,3 +1,82 @@
|
|||
# Iridium
|
||||
|
||||
A diferent way to control a headless browser diferent to selenium
|
||||
A diferent way to control a headless browser diferent to selenium
|
||||
|
||||
### Build dependencies
|
||||
- (poetry)[https://github.com/sdispater/poetry]
|
||||
|
||||
### System dependencies
|
||||
- GNU/Linux with X.org (xvfb and a WM can works)
|
||||
- xdotool
|
||||
- xclip/xsel (xsel doesn't always seem to work)
|
||||
- A web browser (firefox/chrome)
|
||||
|
||||
### Dependencies
|
||||
- Python 3.x
|
||||
- requests-html
|
||||
- clipboard
|
||||
- python-libxdo
|
||||
|
||||
### Installation
|
||||
`pip install iridium`
|
||||
|
||||
### Build and install from source
|
||||
```
|
||||
poetry build
|
||||
pip install dist/iridium*.whl --user
|
||||
```
|
||||
|
||||
### Usage
|
||||
**Generate a new driver**
|
||||
```
|
||||
In [1]: from iridium import Iridium
|
||||
In [2]: driver = Iridium("firefox")
|
||||
```
|
||||
**Access to a website**
|
||||
```
|
||||
In [3]: driver.get("http://example.com/")
|
||||
```
|
||||
> http or https is not necesary
|
||||
|
||||
**get an element of the DOM by a CSS selector**
|
||||
```
|
||||
In [4]: elem = driver.get_element("a")
|
||||
```
|
||||
|
||||
**Click to an element of the DOM**
|
||||
```
|
||||
In [5]: elem.click()
|
||||
In [6]: # Or you can directly do the "click" method of the driver
|
||||
In [7]: driver.click("h1")
|
||||
```
|
||||
|
||||
**Get an attribute of an element**
|
||||
```
|
||||
In [8]: elem.get_attribute("href")
|
||||
Out[8]: "https://www.iana.org/domains/example"
|
||||
In [9]: elem.get_text()
|
||||
Out[9]: "More information..."
|
||||
```
|
||||
|
||||
**Check if an element exists**
|
||||
```
|
||||
In [8]: elem = driver.get_element("h1")
|
||||
In [9]: elem.exists()
|
||||
out[9]: True
|
||||
```
|
||||
|
||||
**Execute javascript code**
|
||||
```
|
||||
In [11]: driver.execute_script('''
|
||||
document.querySelector('body').style.backgroundColor = "red";
|
||||
''')
|
||||
```
|
||||
|
||||
**Get all the HTML content of the page**
|
||||
```
|
||||
In [12]: driver.page_source
|
||||
Out[12]: "<!doctype html>\n<html>"...
|
||||
```
|
||||
|
||||
### TO-DO
|
||||
- [ ] Get the URL of the current page
|
||||
|
|
Loading…
Reference in New Issue