https://github.com/dreddsa5dies/automatego
Implementation on Go projects book "Automate the Boring Stuff with Python: Practical Programming for Total Beginners"
https://github.com/dreddsa5dies/automatego
automation beginner-project go golang practical
Last synced: about 1 year ago
JSON representation
Implementation on Go projects book "Automate the Boring Stuff with Python: Practical Programming for Total Beginners"
- Host: GitHub
- URL: https://github.com/dreddsa5dies/automatego
- Owner: dreddsa5dies
- License: mit
- Created: 2017-01-16T03:37:28.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2022-11-21T13:56:21.000Z (over 3 years ago)
- Last Synced: 2024-06-21T14:38:56.563Z (almost 2 years ago)
- Topics: automation, beginner-project, go, golang, practical
- Language: Go
- Homepage:
- Size: 40.7 MB
- Stars: 151
- Watchers: 15
- Forks: 46
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[](https://goreportcard.com/report/github.com/dreddsa5dies/automateGo) 

## Implementation on Go projects book "Automate the Boring Stuff with Python: Practical Programming for Total Beginners"
## Translation
* [English](README.md)
* [Русский](translation/russian/README.md)
## Install
Use [go mod](https://go.dev/ref/mod)
```bash
sudo apt-get install xclip
git clone github.com/dreddsa5dies/automateGo
```
## Recording format: projects/07_01_regexpMail
* 07 - chapter
* 01 - project in the chapter
* NAME - short title
## List of projects
### Pattern matching with regular expressions
- [Search email by regular expression](projects/07_01_regexpMail/)
- [Password verification](projects/07_02_regexpPass)
- [Reading and writing files: Ticket generation](projects/08_01_randomQuizGen)
- [Saving and loading text snippets](projects/08_02_multiClipBoard)
- [Keyword Replacement](projects/08_03_madLibs)
- [Search in *.txt by regular expression](projects/08_04_regexpTxt)
### File management
- [Rename files](projects/09_01_renameDate)
- [Copy folder with all contents to zip file](projects/09_02_backupToZip)
- [Selective Backup](projects/09_03_selectiveBackup)
- [Search for exceptionally large files](projects/09_04_findLargeFiles)
### Automatic collection of data on the Internet
- [Working with Google Maps](projects/11_01_mapIt)
- [Working with Google Search](projects/11_02_googleSearchIt)
- [Requesting web pages](projects/11_03_requestGet)
- [Search url on sites in the terminal](projects/11_04_urlSearchTerm)
- [Request web pages and save to file](projects/11_05_requestSave)
- [Google I'm Feeling Lucky Button](projects/11_06_luckyGoogle)
- [Download all comics on XKCD site](projects/11_07_downloadXkcd)
- [Browser control with Selenium](projects/11_08_seleniumGo)
- [Selenium Browser Control - Find&Click](projects/11_09_seleniumFindClick)
- [Getting latitude and longitude using Yandex](projects/11_10_geocoderYandex)
### Working with Excel spreadsheets
- [Reading Spreadsheet Data](projects/12_01_xlsxGo)
- [Formation of data table](projects/12_02_censusPopData)
- [Write data in xlsx format](projects/12_03_saveExcel)
- [Update Excel data](projects/12_04_updateProduce)
- [Create an NxN multiplication table from N command line](projects/12_05_multiplicationTable)
- [Working with Excel spreadsheets: Inserting blank rows](projects/12_06_blankRowInserter)
- [Change rows and columns](projects/12_07_colToRow)
- [Translate all *.txt files to *.xlsx](projects/12_08_txtToXlsx)
- [Translate *.xlsx to *.txt](projects/12_09_xlsxToTxt)
### Working with PDF and Word documents
- [PDF packages test](projects/13_01_pdfTest)
- [Combine all PDF files into a single PDF file](projects/13_02_combinePdfs)
- [Test of work packages with docx](projects/13_03_docxTest)
### Working with CSV files and JSON data
- [Remove headers from all CSV files](projects/14_01_removeCsvHeader)
- [Weather forecast for a given locality](projects/14_02_quickWeather)
- [Test decoding JSON format](projects/14_03_testJSON)
- [Weather forecast for a given locality II](projects/14_04_quickWeather2)
### Handling date and time values, task scheduler and running programs
- [Test time.Time](projects/15_01_timeTest)
- [Timer program](projects/15_02_stopWacth)
- [Test concurrency](projects/15_03_concurrencyTest)
- [XKCD comics using goroutines](projects/15_04_multidownloadXkcd)
- [Test exec](projects/15_05_execTest)
- [Countdown](projects/15_06_countdown)
### Send email and text messages
- [Test SMTP, IMAP](projects/16_01_testEmailSmtp)
- [Test IMAP](projects/16_02_imapTest)
- [Send message based on dues spreadsheet details](projects/16_03_sendDuesReminders)
- [Twilio SMS test](projects/16_04_twilioTest)
### Working with images
- [Test IMAGE](projects/17_01_testGoImage)
- [Test IMAGE II](projects/17_02_testBild)
- [Test IMAGE III](projects/17_03_testImaging)
- [Resize all images and insert logo](projects/17_04_resizeAndAddLogo)
### Not included in the book
- [Generate barcode](projects/18_01_newChallenge/barcode)
- [Progressbar](projects/18_01_newChallenge/barcode)
- [PDF again](projects/18_01_newChallenge/barcode)
## The code contains comments in Russian
## License
This project is licensed under MIT license. Please read the [LICENSE](https://github.com/dreddsa5dies/automateGo/tree/master/LICENSE.md) file.
## Contribute
Welcomes any kind of contribution. Please read the [CONTRIBUTING](https://github.com/dreddsa5dies/automateGo/tree/master/CONTRIBUTING.md) and [CODE_OF_CONDUCT](https://github.com/dreddsa5dies/automateGo/tree/master/CODE_OF_CONDUCT.md) file.