You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
2.8 KiB

# Tesla Service Manual Scraper
3 years ago
This script will download the Tesla Service Manual onto a local doc folder for offline access. Windows and MacOS (thanks to CollinHeist).
3 years ago
## Setup
1. Go into `secrets.py` and fill out `tesla_account_email` and `tesla_account_password` with your account and password.
2. Go into `scrape.py` and enter the index URL of the manual you want saved by changing `service_manual_index` and `base_url` variables. It is defaulted to the Model 3.
3. If you have 2FA or other challenges with login, consider changing `login_delay` in `secrets.py` to 2 or 3 seconds so you can manually enter your credentials.
4. Setup Python 3. See tutorial at: <https://wiki.python.org/moin/BeginnersGuide/Download>
5. Setup selenium for Python. To use the required stealth module, you **must** use the Chromium webdriver. See tutorial at: <https://blog.testproject.io/2019/07/16/installing-selenium-webdriver-using-python-chrome/>
6. Pip install the required packages (including `requests`, `selenium`, `selenium-stealth`, and `beautifulsoup4`). On windows, you run the following commands on command prompt (CMD):
1. `cd C:\Users\Anson\Desktop\TeslaServiceManualScraper` [template, the path should go wherever you saved this readme]
2. `run pip install -r requirements.txt`
7. Before scraping, it is always a good idea to use a VPN of some sort to avoid any issues with your account. I didn't run into any issues personally, but you can never be too safe.
8. Run `scrape.py` by typing `python scrape.py`
## Viewing offline
### Option 1: Easy Way
1. Go into `docs/` folder and open up `index.html`. You're going to get 99% of the service manual just like that, but no search functionality.
### Option 2: HTTP Server (thanks to TheNexusAvenger)
1. Run CMD on Windows, and change the directory to the `docs` folder. Something like this `cd C:\Users\Anson\Desktop\TeslaServiceManualScraper`
2. Run the following command: `python -m http.server` (Python obviously needs to be installed)
3. Use a web browser and navigate to: `http://localhost:8000/` to see the full service manual including search.
## Tips
* A full scrape of the Model 3 service manual **took over 30 minutes**. This script is set up so that you can stop the script, and then continue later on.
* Keep an eye out, Tesla's website seems to boot you out of logged in status after about 250 pages or 20 minutes of continuous refreshing. So it might be worthwhile to run this on the side while keeping an eye on your login status.
* Total file size of the Model 3 service manual is roughly **2.2GB**.
3 years ago
* On your first run, Tesla might throw a Captcha or lead to an error page. Most of the time, just rerun and it'll work.
## Roadmap
1. Run a check to ensure no "no access" html files are downloaded.
2. Restart the script every 200 files or so.