Behöver ert företag hjälp med att implementera AI? Kontakta oss och få prisoffert här →
AI Skolan
January 21, 2026

GitHub Trending till Google Sheets, rensad spårning

Rickard Andersson Partner, Nodenordic.se

Att spåra GitHub Trending manuellt låter enkelt tills du gör det varje vecka. Flikar staplas på hög, kolumner glider, och någon klistrar oundvikligen in samma repo två gånger med ett lite annorlunda namn.

Den här GitHub Sheets tracking-automationen träffar produktteam som gör verktygsresearch hårdast, men även tillväxtfokuserade grundare och byråledare som bygger ”vad är hett”-rapporter känner av det. I stället för att lägga cirka en timme på att samla repo:n och strukturera arket får du ett snyggt, deduplicerat flöde som fortsätter vara användbart över tid.

Nedan ser du exakt vad workflowet gör, vad du behöver för att köra det och vilka resultat du kan förvänta dig när det körs enligt ett schema.

Så fungerar den här automatiseringen

Hela n8n-workflowet, från trigger till slutlig output:

GitHub Trending är en stark signal, men att omvandla den till något som teamet faktiskt kan använda är den irriterande delen. Du öppnar trendsidan, filtrerar på dagligen vs. veckovis, kanske byter språk, och börjar sedan kopiera namn, URL:er, stjärnor och anteckningar till ett kalkylark. Nästa vecka gör du om det, och nu jämför du rader eftersom du inte minns om du redan loggat det repo:t. Ännu värre: rankning och antal stjärnor ändras, så din ”rapport” blir inaktuell i samma stund som du klistrar in den.

Det är inte ett stort problem. Det är alla små hela tiden.

  • Manuellt copy/paste blir cirka 30–60 minuter varje vecka, och det är samma repetitiva arbete varje gång.
  • Dubbletter smyger lätt in eftersom repo-namn, versalisering och URL:er inte alltid klistras in konsekvent.
  • Dina kolumner driver över tid, vilket gör att filtrering och pivottabeller blir opålitliga när du behöver dem som mest.
  • När ett repo:s rankning eller stjärnor ändras uppdateras inte arket, så beslut tas på inaktuell data.

Det här workflowet körs enligt schema och hämtar GitHub Trending-data (dagligen, veckovis eller månadsvis) till Google Sheets i ett korrekt formaterat, strukturerat format. Du väljer din ”since”-period och, om du vill, en lista med språk. Sedan hämtar ScrapeOps GitHub Trending-HTML pålitligt, workflowet tolkar sidan till användbara fält (rankning, repo-namn, URL, stjärnor, forks, språk med mera) och normaliserar allt till konsekventa kolumner. Till sist skriver det rader till en trending_raw-flik med en stabil dedupe_key så att upprepningar inte staplas. Om något ändras senare uppdateras samma rad i stället för att dupliceras.

Workflowet börjar med en schemalagd trigger och en liten ”inputs”-konfiguration. Därefter genererar det rätt trending-URL:er, hämtar sidor i batchar med en artighetspaus och transformerar rörig HTML till en prydlig dataset. I slutet blir Google Sheets din levande ”repo-radar” som du kan sortera, filtrera och rapportera från.

Det här får du: Automatisering vs. resultat

Exempel: Så här ser det ut

Säg att du följer 3 trending-vyer varje vecka (daglig, veckovis och månadsvis) plus 2 språk som teamet bryr sig om. Manuellt är det cirka 5 sidor att kopiera, och det är lätt att lägga 10 minuter per sida när du räknar in upprensning, alltså runt 50 minuter i veckan. Med det här workflowet är det i princip noll manuellt arbete: schemat kör, ScrapeOps hämtar HTML:en och Sheets uppdateras automatiskt efter en kort väntan för bearbetning. Du får samma output, men utan repetitiva kalkylarkssysslor.

Det här behöver du

  • n8n-instans (prova n8n Cloud gratis)
  • Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
  • ScrapeOps för att hämta GitHub Trending-HTML pålitligt
  • Google Sheets för att lagra och uppdatera deduplicerade rader
  • ScrapeOps API-nyckel (hämta den i din ScrapeOps-dashboard)

Kunskapsnivå: Nybörjare. Du kopplar konton, skapar en Sheet-flik och mappar några kolumner.

Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).

Så fungerar det

Ett schema sätter igång. Workflowet kör automatiskt (till exempel veckovis på måndag morgon), så ingen behöver komma ihåg att ”gå och kolla Trending”.

Dina inputs definierar vad som ska spåras. En enkel konfiguration sätter tidsfönstret (dagligen/veckovis/månadsvis) och en valfri språklista (som any, python, go), och sedan bygger workflowet rätt GitHub Trending-URL:er utifrån det.

ScrapeOps hämtar sidorna, i batchar. URL:er behandlas i små chunkar med en artighetspaus så att du inte bombarderar endpoints, och så att efterföljande parsing hinner arbeta med ett komplett svar.

Parsing och normalisering gör HTML till rader. Workflowet plockar ut repo-detaljer, rensar fält till konsekventa kolumner och genererar en stabil dedupe_key så att varje kombination av repo/tidsfönster förblir unikt identifierbar.

Google Sheets blir sanningskällan. ”Raw”-fliken uppdateras med ”append or update row”, och en separat veckoflik kan fyllas på för rapportering. Du kan enkelt ändra vilka språk som spåras eller byta från månadsvis till dagligen utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementation

Steg 1: Konfigurera den schemalagda triggern

Konfigurera schemat som startar arbetsflödet för att hämta GitHub-trender.

  1. Lägg till noden Scheduled Trend Trigger som er workflow-trigger.
  2. I Scheduled Trend Trigger behåller ni standardinställningarna för Rule eller justerar intervallet till den kadens ni vill ha.
  3. Anslut Scheduled Trend Trigger till Configure Inputs enligt arbetsflödet.

Steg 2: Anslut Google Sheets

Förbered Google Sheets-noderna som lagrar rå trenddata och veckosammanfattningar.

  1. Öppna Update Raw Sheet och ställ in Document till ert kalkylblads-ID [YOUR_ID] och Sheet Name till trending_raw.
  2. Bekräfta att Operation är appendOrUpdate och att Matching Columns innehåller dedupe_key.
  3. Öppna Load Raw Data och ställ in Document till [YOUR_ID] med Sheet Name satt till trending_raw.
  4. Öppna Append Weekly Sheet och ställ in Document till [YOUR_ID] och Sheet Name till weekly_brief.
  5. Inloggningsuppgifter krävs: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter till Update Raw Sheet, Load Raw Data och Append Weekly Sheet.

Steg 3: Konfigurera indata och parallella grenar

Definiera parametrar för insamlingen och bekräfta den parallella grenen som laddar befintlig data medan URL:er byggs.

  1. I Configure Inputs ställer ni in since till monthly och languages_csv till any.
  2. Verifiera parallell routning: Configure Inputs skickar output både till Compose Trend URLs och Load Raw Data parallellt.
  3. Säkerställ att Compose Trend URLs fortfarande är ansluten till Batch URL Iterator för batchning av URL:er.

Om ni vill spåra flera språk, uppdatera languages_csv till en kommaseparerad lista, till exempel any,JavaScript,Python,Go.

Steg 4: Konfigurera scraping och parsning

Hämta GitHub Trending-sidor och extrahera repository-detaljer.

  1. I Batch URL Iterator ställer ni in Batch Size till 1 för att behandla en URL i taget.
  2. I ScrapeOps HTML Request ställer ni in URL till ={{$json.url}}.
  3. Inloggningsuppgifter krävs: Anslut era scrapeOpsApi-inloggningsuppgifter i ScrapeOps HTML Request.
  4. I Courtesy Pause ställer ni in Amount till 2 och Unit till seconds för att sänka scraping-takten.
  5. Låt Parse Trending Repos vara ansluten efter Courtesy Pause för att omvandla HTML till strukturerade repo-fält.

⚠️ Vanlig fallgrop: Om GitHub ändrar HTML-strukturen kan Parse Trending Repos returnera tomma resultat. Testa igen och justera parslogiken om ni inte ser någon output.

Steg 5: Konfigurera poängsättning och uppdateringar i kalkylbladet

Normalisera numeriska värden, beräkna poäng och lagra råresultat.

  1. I Normalize and Score lämnar ni poänglogiken som den är för att beräkna score, stars_in_period och dedupe_key.
  2. Bekräfta flödet Parse Trending ReposNormalize and ScoreUpdate Raw Sheet.
  3. I Update Raw Sheet bekräftar ni mappningar som repo={{$json.repo}}, score={{$json.score}} och dedupe_key={{$json.dedupe_key}}.

Steg 6: Sammanställ och lägg till veckosammanfattningen

Skapa en veckosammanfattning från rådata och skriv den till veckobladet.

  1. Säkerställ att Load Raw Data är ansluten till Compile Weekly Summary för att aggregera den senaste veckans resultat.
  2. I Compile Weekly Summary behåller ni logiken som beräknar top_repos, top_themes och notes baserat på aktuellt week_id.
  3. I Append Weekly Sheet bekräftar ni mappningarna: week_id={{$json.week_id}}, top_repos={{$json.top_repos}} och top_themes={{$json.top_themes}}.
  4. Verifiera att flödet Compile Weekly SummaryAppend Weekly Sheet är intakt.

Steg 7: Testa och aktivera ert workflow

Validera arbetsflödet end-to-end och aktivera schemalagda körningar.

  1. Klicka på Execute Workflow och bekräfta att Configure Inputs skickar output både till Compose Trend URLs och Load Raw Data parallellt.
  2. Kontrollera Update Raw Sheet för nyligen tillagda eller uppdaterade rader i trending_raw.
  3. Kontrollera Append Weekly Sheet för en ny veckorad i weekly_brief.
  4. När resultaten ser korrekta ut växlar ni arbetsflödet till Active för att köra enligt schemat.
🔒

Lås upp fullständig steg-för-steg-guide

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Google Sheets-inloggningar kan löpa ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera först anslutningsstatusen för Google Sheets-noden i n8n.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
  • Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du att redigera outputs för alltid.

Vanliga frågor

Hur lång tid tar det att sätta upp den här GitHub Sheets tracking-automationen?

Cirka 10 minuter om din Sheet är redo.

Behöver jag kodkunskaper för att automatisera spårning av GitHub Trending?

Nej. Du kopplar främst ScrapeOps och Google Sheets och klistrar sedan in dina Sheet-kolumner. Det inkluderade workflowet hanterar parsing och dedupe-logik åt dig.

Är n8n gratis att använda för det här GitHub Sheets tracking-workflowet?

Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna in ScrapeOps-kostnader baserat på hur ofta du scrape:ar.

Var kan jag hosta n8n för att köra den här automatiseringen?

Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger dig obegränsat antal körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här GitHub Sheets tracking-workflowet för en specifik språklista och en veckorapportsflik?

Ja, och det är enkelt. Uppdatera noden Configure Inputs så att since sätts till weekly och lägg till din languages_csv-lista (till exempel: any,python,rust). Om du vill ha en separat rapportvy, behåll rådata i trending_raw och justera mappningen för ”Append Weekly Sheet” så att den skriver en sammanfattningsrad i din veckoflik. Många team lägger också till en kolumn som review_status så att någon kan markera ”shortlist” utan att störa de automatiserade kolumnerna.

Varför fallerar min ScrapeOps-anslutning i det här workflowet?

Oftast är det ett API-nyckelproblem: den har löpt ut, klistrats in med extra mellanslag eller sparats under fel ScrapeOps-inloggning i n8n. Kontrollera också att requesten pekar på förväntad GitHub Trending-URL (daglig vs. veckovis spelar roll) och att du inte tog bort Courtesy Pause, eftersom för snabba anrop kan komma tillbaka ofullständiga.

Hur många repo:n kan den här GitHub Sheets tracking-automationen hantera?

Mer än tillräckligt för normal ”Trending”-bevakning.

Är den här GitHub Sheets tracking-automationen bättre än att använda Zapier eller Make?

Oftast, ja, eftersom detta inte är en enkel ”nytt objekt → skapa rad”-zap. Du hanterar HTML-hämtning, batchning, parsing, deduplicering och uppdatering av befintliga rader, vilket är där n8n brukar kännas mer flexibelt (och ärligt talat mindre frustrerande). Zapier eller Make kan fortfarande fungera om du ersätter scraping-delen med en färdig API-källa, men GitHub Trending får du inte riktigt serverat på det sättet. Om du är osäker: Prata med en automationsexpert och beskriv dina rapportbehov och volym.

När detta väl rullar blir GitHub Trending en pålitlig input, inte ett veckomoment. Arket håller sig korrekt formaterat, aktuellt och redo för riktig analys.

Kontakta oss

Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.

×

Använd mall

Få direkt tillgång till denna n8n-arbetsflödes JSON-fil

Launch login modal Launch register modal