searchconsole - Python Library for Google Search Console API
# Introduction
searchconsole is a Python library that provides an easy-to-use interface for working with the Google Search Console API. With this library, you can fetch data from your Search Console account and use it to analyze your website's performance in search results.
# Getting Started
Before you can use the searchconsole library, you need to generate a credentials.json file that will allow you to authenticate with the Google Search Console API. To generate this file, you can use the Credential class provided by the library.
```python
from credential.credential import Crediential
client_id = "kjahfdnjkeahfnulkjbn38294u2389"
client_secret = "32u4393kjbjjk3b4bk331094i3jb"
# create the credentials.json file in your home directory
Credential(client_id=client_id, client_secret=client_secret)
# they will send you a new tab where you can allow the permission and get the key
# Enter your Authorization code here:-
```
After enter the Authorization you will get the credenial.json then after comment the Credential(client_id=client_id, client_secret=client_secret)
This will create a credentials.json file in your home directory that you can use to authenticate with the API.
Make sure that you have obtained the credentials.json file. Please note that the refresh token for this library expires after 6 months of inactivity. If you use the library before the expiration date, the expiration time gets extended to another 6 months.
So you don't need to generate the credential.json again and again
# Fetching Data
Once you have generated your credentials.json file, you can use the searchconsole library to fetch data from your Search Console account. Here is an example of how to fetch search analytics data for a given domain:
```python
from searchconsole.searchconsole import Searchconsole
domain = "https://www.example.com/"
start_date = "2022-01-01"
# dont write end date they will automatically update as date.today()
authenticate with the API using credentials.json
auth_response = SearchConsole(domain=domain,start_date=start_date, credentials='credentials.json')
# print the data
# print(auth_response)
report_dict = []
for i in auth_response['rows']:
auth_data = i
new_dict = {
"query": auth_data["keys"][0],
"page": auth_data["keys"][1],
"country": auth_data["keys"][2],
"device": auth_data["keys"][3],
"date": auth_data["keys"][4],
"clicks": auth_data["clicks"],
"impressions": auth_data["impressions"],
"ctr": auth_data["ctr"],
"position": auth_data["position"]
}
report_dict.append(new_dict)
print(report_dict)
```
# Output:
["query", "page", "country", "device", "date","impression","clicks","position","ctr"]
```python
{
"query":"console",
"country":"ind",
"page":"www.example.com",
"device":"Desktop",
"date":"2023-02-13",
"impression":"23",
"clicks":"23",
"position":"2",
"ctr":"2",
}
```
# Requirements
The following dependencies are required to use the searchconsole library:
apiclient
oauth2client
google-api-python-client
httplib2
You can add these requirements to a file called requirements.txt in the root directory of your library, with each requirement on a new line. This will make it easy for users to install all necessary dependencies by running pip install -r requirements.txt.
# Unit Testing
The searchconsole library comes with a large and growing set of unit tests to ensure its functionality is working correctly. These unit tests can be found in the tests directory of the library. By running the tests, you can ensure that the library is functioning correctly and catch any errors that may arise.
# Conclusion
With the searchconsole library, it is easy to fetch data from your Google Search Console account and use it to analyze your website's performance in search results. By following the steps outlined in this document, you can quickly get started with the library and begin using it to improve your website's search performance.
Raw data
{
"_id": null,
"home_page": "https://github.com/Rahulkatoch99/py_searchconsole",
"name": "pysearchconsole",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "rahulkatoch99@gmail.com, echkayweb@gmail.com",
"keywords": "search console api google seo python libraries API integration web traffic analysis",
"author": "Rahul Katoch, Harish kumar",
"author_email": "rahulkatoch99@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/39/fa/82b0843de9aaab7c12434d60f8f9d5113e3e8f1243e63679e5f42c1fe77a/pysearchconsole-1.0.5.tar.gz",
"platform": null,
"description": "searchconsole - Python Library for Google Search Console API\n\n# Introduction\n\nsearchconsole is a Python library that provides an easy-to-use interface for working with the Google Search Console API. With this library, you can fetch data from your Search Console account and use it to analyze your website's performance in search results.\n\n# Getting Started\n\nBefore you can use the searchconsole library, you need to generate a credentials.json file that will allow you to authenticate with the Google Search Console API. To generate this file, you can use the Credential class provided by the library.\n```python\nfrom credential.credential import Crediential\n\nclient_id = \"kjahfdnjkeahfnulkjbn38294u2389\"\nclient_secret = \"32u4393kjbjjk3b4bk331094i3jb\"\n\n# create the credentials.json file in your home directory\n\nCredential(client_id=client_id, client_secret=client_secret)\n\n# they will send you a new tab where you can allow the permission and get the key\n\n# Enter your Authorization code here:-\n\n```\n After enter the Authorization you will get the credenial.json then after comment the Credential(client_id=client_id, client_secret=client_secret)\n \n \n\nThis will create a credentials.json file in your home directory that you can use to authenticate with the API.\n\n\n\nMake sure that you have obtained the credentials.json file. Please note that the refresh token for this library expires after 6 months of inactivity. If you use the library before the expiration date, the expiration time gets extended to another 6 months.\n\nSo you don't need to generate the credential.json again and again\n\n# Fetching Data\n\nOnce you have generated your credentials.json file, you can use the searchconsole library to fetch data from your Search Console account. Here is an example of how to fetch search analytics data for a given domain:\n```python\nfrom searchconsole.searchconsole import Searchconsole\n\ndomain = \"https://www.example.com/\"\nstart_date = \"2022-01-01\"\n\n\n# dont write end date they will automatically update as date.today()\n\nauthenticate with the API using credentials.json\n\nauth_response = SearchConsole(domain=domain,start_date=start_date, credentials='credentials.json')\n\n# print the data\n\n# print(auth_response)\n\nreport_dict = []\nfor i in auth_response['rows']:\n auth_data = i\n new_dict = {\n \"query\": auth_data[\"keys\"][0],\n \"page\": auth_data[\"keys\"][1],\n \"country\": auth_data[\"keys\"][2],\n \"device\": auth_data[\"keys\"][3],\n \"date\": auth_data[\"keys\"][4],\n \"clicks\": auth_data[\"clicks\"],\n \"impressions\": auth_data[\"impressions\"],\n \"ctr\": auth_data[\"ctr\"],\n \"position\": auth_data[\"position\"]\n }\n report_dict.append(new_dict)\nprint(report_dict)\n\n```\n\n# Output:\n\n\n[\"query\", \"page\", \"country\", \"device\", \"date\",\"impression\",\"clicks\",\"position\",\"ctr\"]\n```python\n{\n\"query\":\"console\",\n\"country\":\"ind\",\n\"page\":\"www.example.com\",\n\"device\":\"Desktop\",\n\"date\":\"2023-02-13\",\n\"impression\":\"23\",\n\"clicks\":\"23\",\n\"position\":\"2\",\n\"ctr\":\"2\",\n}\n\n```\n\n# Requirements\n\nThe following dependencies are required to use the searchconsole library:\n\napiclient\noauth2client\ngoogle-api-python-client\nhttplib2\n\nYou can add these requirements to a file called requirements.txt in the root directory of your library, with each requirement on a new line. This will make it easy for users to install all necessary dependencies by running pip install -r requirements.txt.\n\n# Unit Testing\n\nThe searchconsole library comes with a large and growing set of unit tests to ensure its functionality is working correctly. These unit tests can be found in the tests directory of the library. By running the tests, you can ensure that the library is functioning correctly and catch any errors that may arise.\n\n# Conclusion\n\nWith the searchconsole library, it is easy to fetch data from your Google Search Console account and use it to analyze your website's performance in search results. By following the steps outlined in this document, you can quickly get started with the library and begin using it to improve your website's search performance.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "PySearchConsole is a Python library that allows you to get query and analyze data from your website's Search Console account, including search analytics, crawl errors, sitemaps, and more.",
"version": "1.0.5",
"project_urls": {
"Homepage": "https://github.com/Rahulkatoch99/py_searchconsole"
},
"split_keywords": [
"search",
"console",
"api",
"google",
"seo",
"python",
"libraries",
"api",
"integration",
"web",
"traffic",
"analysis"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "ea01e21f430cfc310dc4cf463fc78fd00aee9eb07101a69be7846f21ea3fc6b4",
"md5": "641be8880ee793bb8c0d66f5a9201686",
"sha256": "2a90e87e8aba3d684f835f14b457987b659108636645f7aa6f33e310d6a38825"
},
"downloads": -1,
"filename": "pysearchconsole-1.0.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "641be8880ee793bb8c0d66f5a9201686",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 5070,
"upload_time": "2023-05-10T06:01:56",
"upload_time_iso_8601": "2023-05-10T06:01:56.489829Z",
"url": "https://files.pythonhosted.org/packages/ea/01/e21f430cfc310dc4cf463fc78fd00aee9eb07101a69be7846f21ea3fc6b4/pysearchconsole-1.0.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "39fa82b0843de9aaab7c12434d60f8f9d5113e3e8f1243e63679e5f42c1fe77a",
"md5": "0352f537e04363c5bce941c493a2d620",
"sha256": "4832078d02ed68e1491304b45c1882377417c1a09d31aa54a1347e75edb16cab"
},
"downloads": -1,
"filename": "pysearchconsole-1.0.5.tar.gz",
"has_sig": false,
"md5_digest": "0352f537e04363c5bce941c493a2d620",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 4621,
"upload_time": "2023-05-10T06:02:01",
"upload_time_iso_8601": "2023-05-10T06:02:01.997703Z",
"url": "https://files.pythonhosted.org/packages/39/fa/82b0843de9aaab7c12434d60f8f9d5113e3e8f1243e63679e5f42c1fe77a/pysearchconsole-1.0.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-10 06:02:01",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Rahulkatoch99",
"github_project": "py_searchconsole",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "pysearchconsole"
}