1001 Freelance Projects
Latest Projects from
Freelance Marketplaces
View Project
View this project in detail
(Note: you will be redirected to external marketplace)
Project title:
serpapi scholar ai websearch equviliant
Posted by:
External project from PeoplePerHour
Started:
25-Mar-2025 18:40 GMT
Description:
Original Project Overview
We maintain a Google Sheets database of academic figures, each with the following columns:

Name
Surname
Email
University
Subject

We need to automatically fetch the latest two publications for each individual using:
Google Scholar (via SerpAPI’s Scholar API)
ORCID (public API)
OpenAlex (public API)

The results must be inserted back into specified columns in the Google Sheet (F–Q), updated daily or on-demand.

Key Challenges
Sorting by Latest in Google Scholar
By default, Scholar returns top-cited or most-relevant articles, not necessarily newest.
Must force a date sort (&sort=pubdate) or a separate fallback approach.
Handling Ambiguous Names
Multiple authors can share the same name.
Potentially need to detect and filter out mismatched results.
Ensuring Valid Data Types
Google Sheets rejects structured or non-string data.
Must parse out just the string or numeric year/date.
Rate Limits and API Keys
Respect daily or per-minute call limits for SerpAPI, ORCID, OpenAlex.
Must handle errors gracefully.

Automation
Should run as a script from a server or cloud environment (we have console access).
Possibly on a schedule (e.g., daily cron job).

Responsibilities
Set up a robust Python script or application that:
Authenticates to Google Sheets (using service account credentials). DONE
Retrieves our researcher data (Name, Surname, Email, University, Subject) from the “Pubs” or “Topics” sheet.
Calls SerpAPI’s Google Scholar endpoint with date-sorted queries, including fallback logic if no results appear.
Calls ORCID’s public API (optional, can parse structured date fields carefully).
Calls OpenAlex’s public API to fetch the newest two works by each author.
Inserts the results (title, year/date) back into the correct columns in the Google Sheet (F–Q).
Handle name disambiguation or minimal validation so we don’t store obviously incorrect publications.

Deliverables
Python script (or small app) that can be triggered manually or on a schedule.
Successful write-back of 2 publications each from Google Scholar, ORCID, and OpenAlex (6 total) into the correct columns.
Error handling: If no results, store “N/A” or a sensible fallback.
Instructions on setup, environment variables, and usage (e.g., README).




What Still Needs To Be Done
1. Fix Google Scholar Fetch
Main Problem: You're getting most cited or incorrect results.

Needs Fixing:

Ensure sort=pubdate is actually respected in SerpAPI query.

Add fallback logic: if pubdate query fails (returns nothing), retry without it.

Clean up irrelevant results using basic validation (e.g., check university or subject in result string).

2. OpenAlex Improvements
Currently works for some authors.
But still needs name disambiguation logic:

Validate author’s affiliation or match on email (if possible).

Fallback if OpenAlex returns wrong author.

3. ORCID Integration (Optional)
You paused this due to structured date errors.

If you want to include it again later:

Parse structured publication-date fields into simple strings.

Validate the correct ORCID author before fetching works.

4. Error Handling
Improve logging to show:

Which step failed (e.g. API call, parsing, writing to sheet).

Show why (e.g., "no publications found", "mismatched data", "bad year format").

Replace all "N/A" logic with something more transparent (e.g., "No match found for [X]").

5. Name Disambiguation Logic
Currently just using Name + University + Subject in the query.

Needs:

Smarter matching logic to avoid irrelevant or repetitive publications.

Maybe strip long names or fuzzy-match affiliations if exact match fails.

6. Cleaner Sheet Writes
Fix Google Sheets writing errors:

Avoid trying to write structured JSON (like ORCID publication-date objects).

Ensure all fields written are flat strings (title + year/date only).

7. Automation (Optional)
Set up to run automatically (cron job, server scheduler) if needed.

Add logging/output to file for record-keeping.
Project ID:
3427941
Project category:
Project budget:
View this project in detail
(Note: you will be redirected to external marketplace)
Last Projects / Browse Projects
  Project Started
Move word press site to WIX 30 Mar 2025 14:31 GMT
Logo enhancement 30 Mar 2025 14:06 GMT
Launch Assistant for Drink Brand (Shopify, Marketing, AI, ) 30 Mar 2025 13:19 GMT
Animator needed for Unreal 30 Mar 2025 13:09 GMT
Friends/Employees/Contacts for Feedback (Easy) 30 Mar 2025 11:15 GMT
Salesforce updates including automations with Panda Doc 30 Mar 2025 11:15 GMT
I need to alter (handwritten) text on 3 images 30 Mar 2025 11:00 GMT
Logo design 30 Mar 2025 08:54 GMT
Copy images into PDF template 30 Mar 2025 08:39 GMT
One Page Website 30 Mar 2025 08:39 GMT
Who can Chat Email or Call Meta 30 Mar 2025 08:39 GMT
Website content required. 30 Mar 2025 06:08 GMT
I need a flyer created 30 Mar 2025 06:05 GMT
Wix Template design 30 Mar 2025 06:05 GMT
A GREEN SCREEN BACKGROUND THAT LOOKS LIKE A REAL STUDIO SET 30 Mar 2025 03:25 GMT
Browse All Projects
Projects by Skills ...
android
ajax
asp
aspnet
cms
cpp
csharp
css
delphi
design
drupal
excel
facebook
flash
html
java
javascript
joomla
iphone
mysql
photoshop
php
python
ruby
seo
sql
sysadm
translate
typing
twitter
vbnet
xml
wordpress
writing
New!
Проекты на русском
(Projects in Russian)

Copyright © 2005-2024
1001 Freelance Projects