{"id":23252905,"url":"https://github.com/kristiangasic/seo-bot","last_synced_at":"2026-04-18T09:32:57.276Z","repository":{"id":264204666,"uuid":"892709453","full_name":"kristiangasic/seo-bot","owner":"kristiangasic","description":"[SEO] Google \u0026 Youtube Search bot 2025 ( Python Learning)","archived":false,"fork":false,"pushed_at":"2025-01-22T15:49:55.000Z","size":1990,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-19T17:47:45.182Z","etag":null,"topics":["google","googlesearch","python3","seo","youtube","youtubebot"],"latest_commit_sha":null,"homepage":"https://oxoo.app","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kristiangasic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-11-22T16:15:52.000Z","updated_at":"2025-07-02T21:57:28.000Z","dependencies_parsed_at":"2025-01-22T13:24:47.341Z","dependency_job_id":"6511dfdf-83a1-471c-8e2f-ee76cafabc6f","html_url":"https://github.com/kristiangasic/seo-bot","commit_stats":null,"previous_names":["kristiangasic/seo-bot"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/kristiangasic/seo-bot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kristiangasic%2Fseo-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kristiangasic%2Fseo-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kristiangasic%2Fseo-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kristiangasic%2Fseo-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kristiangasic","download_url":"https://codeload.github.com/kristiangasic/seo-bot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kristiangasic%2Fseo-bot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31963966,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["google","googlesearch","python3","seo","youtube","youtubebot"],"created_at":"2024-12-19T10:19:07.610Z","updated_at":"2026-04-18T09:32:57.237Z","avatar_url":"https://github.com/kristiangasic.png","language":"Python","funding_links":["https://www.buymeacoffee.com/kristiangasic"],"categories":[],"sub_categories":[],"readme":"# Multi-Engine Search - SEO Bot 2025\n\n### Overview\nThis project is a script designed for **practice purposes only** to automate simple Google searches and simulate user interactions on target web pages. It utilizes **Selenium WebDriver** with **Python** and requires a **Firefox browser**. Be aware of the potential risks of automated queries—Google may penalize such activities. Use responsibly and only within the bounds of legal and ethical guidelines.\n\n\n---\n\n### Features\n- **Multi-Engine Support**: Perform searches on Bing, DuckDuckGo, and Yahoo.\n- **Proxy Rotation**: Automatically rotates proxies to ensure anonymity.\n- **User-Agent Spoofing**: Randomly selects user-agents to mimic real browser activity.\n- **Headless Browsing**: Uses headless Firefox for efficient and invisible operations.\n- **Cookie Handling**: Automatically accepts cookie policies to prevent interruptions.\n- **Customizable Search Duration**: Define the duration for which the bot should visit and scroll through the search results.\n- **GUI Support**: User-friendly GUI for easy configuration and control of the bot.\n\n---\n\n### Installation\n\n#### 1. Prerequisites\n- **Operating System:** Windows 10/11.\n- **Browser:** Latest version of [Firefox/Geckodriver](https://github.com/mozilla/geckodriver/releases).\n- **Python Version:** Python 3.x.\n\n#### 2. Required Python Packages\nRun the following commands to install dependencies:\n```bash\npip install selenium-wire\npip install fake_useragent\npip install customtkinter\npip install urllib3\npip install requests\n```\n\n#### 3. Additional Downloads\n- [Python](https://www.python.org/downloads/)\n- [Selenium Documentation](https://www.selenium.dev/documentation/en/)\n- [Webdriver Manager Documentation](https://pypi.org/project/webdriver-manager/)\n- [Youtube Tutorial here](https://www.youtube.com/watch?v=NKj2z_T5wkw)\n\n---\n\n### Usage\n\n#### Running the Script\n1. Clone this repository to your local machine.\n2. Run the script using Python:\n   ```bash\n   python3 main.py\n   ```\n\n#### Script Logic\n1. The script selects a random keyword from the predefined `keywords_with_urls` dictionary.\n2. It launches a headless Firefox browser instance with a random user agent and window size.\n3. Simulates a Google search for the keyword and navigates to the associated URL.\n4. Performs interactions (scrolling, clicking links) to mimic human behavior.\n5. Repeats the process with randomized delays between sessions.\n\n---\n\n### Key Functionalities\n\n#### 1. Randomized Behavior\n- **Keywords \u0026 URLs:** A random keyword and associated URL are selected for each search.\n- **User Agents:** A random user agent is applied to each session.\n- **Browser Window Size:** Resized to emulate various device types.\n\n#### 2. Search and Navigation\n- Simulates Google searches and checks if the target URL appears in the results.\n- If not found, directly navigates to the predefined URL.\n\n#### 3. Cookie and Terms Acceptance\n- Automatically clicks on cookie and terms acceptance buttons when presented.\n\n#### 4. Random Interactions\n- Scrolls the page randomly and clicks on links to simulate user behavior.\n\n#### Example Configuration:\nThe `keywords_with_urls` dictionary stores the keyword-URL pairs:\n```python\nkeywords_with_urls = {\n    \"example keyword\": \"https://example.com/page1\",\n    \"another keyword\": \"https://example.com/page2\"\n}\n```\n\n---\n\n### Warnings\n- **Legal Risks:** Automated web interactions may violate terms of service. Ensure you have proper authorization.\n- **Google Penalties:** Automated queries could result in IP bans or other restrictions.\n- **Headless Browsing:** Although this script runs in headless mode, detection mechanisms may still recognize automation.\n\n---\n\n### Contributing\nFeel free to submit issues or contribute enhancements via pull requests.\n\n---\n\n### Contact\nFor business inquiries, reach out to:  \n**Kristian Gasic**  \n📧 kristian@gasic.bio\n\n[![Buy Me A Coffee](https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png)](https://www.buymeacoffee.com/kristiangasic)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkristiangasic%2Fseo-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkristiangasic%2Fseo-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkristiangasic%2Fseo-bot/lists"}