From f176786d12ead5796644a9b37d96786cdaa55391 Mon Sep 17 00:00:00 2001 From: Praveen Date: Thu, 13 Oct 2022 21:04:52 +0530 Subject: [PATCH] Update open_google_results.py (#7085) * update crawl_google_results.py * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update and rename crawl_google_results.py to open_google_results.py * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Create crawl_google_results.py * Update web_programming/open_google_results.py * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update open_google_results.py Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Christian Clauss --- web_programming/open_google_results.py | 42 ++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 web_programming/open_google_results.py diff --git a/web_programming/open_google_results.py b/web_programming/open_google_results.py new file mode 100644 index 000000000..0e1dba8c5 --- /dev/null +++ b/web_programming/open_google_results.py @@ -0,0 +1,42 @@ +import webbrowser +from sys import argv +from urllib.parse import quote, parse_qs +from fake_useragent import UserAgent + +import requests +from bs4 import BeautifulSoup + +if __name__ == "__main__": + if len(argv) > 1: + query = "%20".join(argv[1:]) + else: + query = quote(str(input("Search: "))) + + print("Googling.....") + + url = f"https://www.google.com/search?q={query}&num=100" + + res = requests.get( + url, + headers={ + "User-Agent": str(UserAgent().random) + }, + ) + + try: + link = ( + BeautifulSoup(res.text, "html.parser") + .find("div", attrs={"class": "yuRUbf"}) + .find("a") + .get("href") + ) + + except AttributeError: + link = parse_qs( + BeautifulSoup(res.text, "html.parser") + .find("div", attrs={"class": "kCrYT"}) + .find("a") + .get("href") + )["url"][0] + + webbrowser.open(link)