-
Notifications
You must be signed in to change notification settings - Fork 0
/
googleScholar.py
63 lines (48 loc) · 1.84 KB
/
googleScholar.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
from serpapi import GoogleSearch
import requests
import os
from dotenv import load_dotenv
load_dotenv()
def obter_dados_google(palavra_chave, pagina=1):
pagina = int(pagina)
params = {
"engine": "google_scholar",
"q": palavra_chave,
"api_key": os.getenv("API_KEY"),
"start": (pagina - 1) * 10
}
paginationResponses = []
paginationResponse = requests.get(
"https://serpapi.com/search.json", params=params).json()
paginationResponseData = {
"organic_results": paginationResponse["organic_results"],
"page": str(pagina)
}
paginationResponses.append(paginationResponseData)
totalResults = paginationResponse["search_information"]["total_results"]
# # for cited in paginationResponses:
# # for item in cited['organic_results']:
# # citedResponses.append(item['inline_links']['cited_by']['total'])
# paginationResponses.insert(
# 0, {"organic_results": organic_results, "page": "1"})
return totalResults, paginationResponses
def citacoes(palavra_chave, page, artigo, id):
# dado = request.args.get('dado')
# page = request.args.get('page', 1)
# serpapi_scholar_link = request.args.get('serpapi_scholar_link')
params = {
"engine": "google_scholar",
"q": palavra_chave,
"api_key": os.getenv("API_KEY"),
# "start": (int(pagina) - 1) * 10
}
paginationResponses = []
paginationResponses = requests.get(
f"https://serpapi.com/search.json?cites={id}", params=params).json()
# paginationResponseData = {
# "organic_results": paginationResponse["organic_results"],
# "page": str(pagina)
# }
# paginationResponses.append(paginationResponseData)
# totalResults = paginationResponse["search_information"]["total_results"]
return paginationResponses