700 teadusartikli käsitlemine on suur andmehulk. Siin on optimaalsed lahendused kompaktsete nimeliste saamiseks.
python3 compact_articles_list.py
Loob:
articles_compact_list.csv - Excel-ilearticles_compact_list.html - Veebis vaatamine + sorteeriminearticles_compact_list.md - Markdown tabelVäljad:
| # | Pealkiri | Aasta | Žurnaal | Allikfail | Ülevaade (30 sõna) | Relevants/10 |
Eelised:
chmod +x compact_curl_list.sh
./compact_curl_list.sh
Loob:
articles_compact.csvarticles_compact.mdEelised:
# CSV formaadis
curl -s http://100.80.222.54:9020/v1/graphql \
-X POST \
-H "Content-Type: application/json" \
-d '{
"query": "{ Get { ScientificArticle(limit: 50) { title year journal abstract_en relevance_score } } }"
}' \
| jq -r '.data.Get.ScientificArticle[] | [.title, .year, .journal, .relevance_score] | @csv' \
> ~/Downloads/articles.csv
# Markdown tabel
curl -s http://100.80.222.54:9020/v1/graphql \
-X POST \
-H "Content-Type: application/json" \
-d '{
"query": "{ Get { ScientificArticle(limit: 50) { title year journal relevance_score } } }"
}' \
| jq -r '.data.Get.ScientificArticle[] | "| \(.title) | \(.year) | \(.journal) | \(.relevance_score)/10 |"' \
> ~/Downloads/articles.md
{
Get {
ScientificArticle(limit: 100) {
# Põhivalik - KOMPAKTNE
title # Artikli pealkiri
source_file # PDF allikfail
year # Avaldamise aasta
journal # Ajakirja nimi
abstract_en # Lühike kokkuvõte
relevance_score # Relevantsus (0-10)
# Valikuline - suurendab hulka
# doi # DOI ID
# authors # Autorite nimekiri
# key_concepts # Võtmesõnad
# processing_date # Töötlemise kuupäev
}
}
}
Asemel limit: 100, kasuta limit: 700 (või kuni 10,000):
ScientificArticle(limit: 700) {
title
source_file
year
}
⚠️ Hoiatus: 700+ artikli kohta võtab ~ 5-15 sekundit.
ScientificArticle(
limit: 100
where: {
path: "key_concepts"
operator: ContainsAny
valueString: ["transport", "road safety"]
}
) {
title
key_concepts
}
ScientificArticle(
limit: 100
sort: {path: "relevance_score", order: desc}
) {
title
relevance_score
}
# jq-s
.abstract_en | split(" ") | .[0:10] | join(" ")
| Lahendus | Väljundid | Kiirus | Mugavus |
|---|---|---|---|
| Python | CSV, HTML, MD | 3-5s | ⭐⭐⭐⭐⭐ |
| Bash | CSV, MD | 2-3s | ⭐⭐⭐⭐ |
| CURL käsk | JSON/CSV | 1-2s | ⭐⭐⭐ |
title,year,journal,abstract,relevance
"Article Title",2024,"Nature","Abstract text...",9
<table>
<thead>
<tr><th>Pealkiri</th><th>Aasta</th>...</tr>
</thead>
<tbody>
<tr><td>Article</td><td>2024</td>...</tr>
</tbody>
</table>
| Pealkiri | Aasta | Relevants |
|----------|-------|-----------|
| Article | 2024 | 9/10 |
Kõige lihtsam:
python3 compact_articles_list.py
Kõige kiirem:
./compact_curl_list.sh
Käsitsi testi:
curl -s http://100.80.222.54:9020/v1/graphql \
-X POST \
-H "Content-Type: application/json" \
-d '{"query": "{ Get { ScientificArticle(limit: 5) { title year } } }"}' \
| jq .
# Rida 13: Väljad
COMPACT_QUERY = {
"query": """{ Get { ScientificArticle(limit: 100) {
title
source_file
year
# Lisa siia rohkem välju
}
# Rida 15: GraphQL päring
-d '{
"query": "{ Get { ScientificArticle(limit: 100) {
title
source_file
# Lisa siia rohkem välju
}"
Exceli sorteerimine:
HTML avamine brauseris:
open ~/Downloads/articles_compact_list.html
# Või Windows: start ~/Downloads/articles_compact_list.html
Markdown VS Code'is:
code ~/Downloads/articles_compact_list.md
CSV impordi Google Sheetsi:
PDF printimiseks:
Lahendus: Kasuta pagination (offset + limit) suurte andmete jaoks:
# Esimesed 100
limit: 100, offset: 0
# Järgmised 100
limit: 100, offset: 100
| Probleem | Lahendus |
|---|---|
| "jq: command not found" | sudo apt install jq |
| "Python: ModuleError" | pip3 install --upgrade pip |
| "Timeout" (aegunud päring) | Vähenda limit väärtust (100 asemel 50) |
| HTML näeb valesti välja | Ava Firefox'is, mitte Internet Exploreris |
| CSV avatakse valesti | Import: UTF-8 encoding, semicolon delimiter |
Valminud: 09.01.2026
Versioon: 2.0
Format: Kompaktne, optimeeritud 700+ artikli jaoks