From 438263e9d5fc75b655ca81809f66af774655e4da Mon Sep 17 00:00:00 2001 From: Hurin Hu Date: Sun, 21 Aug 2022 23:34:16 +1200 Subject: [PATCH 1/2] Dev (#104) * fixed datetime parse None issue * fix search problem. (#95) * updated version number * fixed google code changes Co-authored-by: Eugene P --- GoogleNews/__init__.py | 8 ++++---- setup.py | 2 +- test/test_search.py | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/GoogleNews/__init__.py b/GoogleNews/__init__.py index 706fd7c..5cdf385 100644 --- a/GoogleNews/__init__.py +++ b/GoogleNews/__init__.py @@ -79,7 +79,7 @@ def __init__(self,lang="en",period="",start="",end="",encode="utf-8",region=None self.__start = start self.__end = end self.__encode = encode - self.__version = '1.6.4' + self.__version = '1.6.5' def getVersion(self): return self.__version @@ -136,7 +136,7 @@ def build_response(self): else: #TODO might want to add output for user to know no data was found return - result = self.content.find_all("div", id="search")[0].find("div", id="rso").children + result = self.content.find_all("a",{"jsname" : re.compile(r".*")})[3:-1] return result def page_at(self, page=1): @@ -164,7 +164,7 @@ def page_at(self, page=1): except Exception: tmp_text = '' try: - tmp_link = item.find("a").get("href") + tmp_link = item.get("href") except Exception: tmp_link = '' try: @@ -218,7 +218,7 @@ def get_page(self, page=1): except Exception: tmp_text = '' try: - tmp_link = item.find("a").get("href") + tmp_link = item.get("href") except Exception: tmp_link = '' try: diff --git a/setup.py b/setup.py index 95e0de7..7c05fa3 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ setuptools.setup( name="GoogleNews", - version="1.6.4", + version="1.6.5", author="Hurin Hu", author_email="hurin@live.ca", description="Google News search for Python", diff --git a/test/test_search.py b/test/test_search.py index 20082ec..b548fce 100644 --- a/test/test_search.py +++ b/test/test_search.py @@ -51,7 +51,7 @@ class TestStringMethods(unittest.TestCase): def testVersion(self): googlenews = GoogleNews() - version = '1.6.4' + version = '1.6.5' self.assertIn(version, googlenews.getVersion()) print('Latest version matched') From 3fc922879e7c08f4fff666b7e651267c32e09c37 Mon Sep 17 00:00:00 2001 From: Emre Emrah Date: Tue, 27 Dec 2022 00:48:12 +0300 Subject: [PATCH 2/2] Allow adding search arguments to query (#110) still has some issue, url for no key word is not correct, will fixed it in the new release. --- GoogleNews/__init__.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/GoogleNews/__init__.py b/GoogleNews/__init__.py index 5cdf385..e9a2700 100644 --- a/GoogleNews/__init__.py +++ b/GoogleNews/__init__.py @@ -254,10 +254,14 @@ def getpage(self, page=1): def get_news(self, key="",deamplify=False): if key != '': key = "+".join(key.split(" ")) - if self.__encode != "": - key = urllib.request.quote(key.encode(self.__encode)) - self.url = 'https://news.google.com/search?q={}+when:{}&hl={}'.format(key,self.__period,self.__lang.lower()) + # if period is set, add it to the query + if self.__period != "": + key += f"+when:{self.__period}" + self.url = 'https://news.google.com/search?q={}&hl={}'.format(key,self.__lang.lower()) else: + # if no query, users still can use period + if self.__period != "": + self.url += f"when:{self.__period}" self.url = 'https://news.google.com/?hl={}'.format(self.__lang) try: self.req = urllib.request.Request(self.url, headers=self.headers)