Przejdź do treści głównej

SE::Wikipedia - scraper wyszukiwarki Wikipedia

Przegląd scrapera

Scraper wyników wyszukiwania Wikipedia. Pozwala wyszukiwać artykuły encyklopedii według słów kluczowych poprzez oficjalne MediaWiki Action API i otrzymywać ustrukturyzowane wyniki: linki, nagłówki, snippety, krótkie opisy, podglądy obrazów, identyfikatory stron oraz rozmiar artykułów.

Obsługiwane są wszystkie wydania językowe Wikipedii (en, ru, de, ja, simple, be-tarask itp.). Na jednej stronie wyników znajduje się do 20 wyników (ograniczenie API extracts), paginacja — do 50 stron. Duplikaty między stronami są automatycznie filtrowane.

Funkcjonalność A-Parser pozwala zapisywać ustawienia scrapowania do późniejszego wykorzystania (presety), ustawiać harmonogram scrapowania i wiele więcej. Zapisywanie wyników jest możliwe w dowolnej formie i strukturze, dzięki wbudowanemu potężnemu silnikowi szablonów Template Toolkit.

Aby pobrać pełną treść artykułu, użyj scrapera SE::Wikipedia::Article.

Zbierane dane

Dane są zbierane przez API https://{lang}.wikipedia.org/w/api.php (generator=search).

  • Całkowita liczba wyników (totalcount)
  • Link do artykułu
  • Nagłówek (anchor)
  • Snippet (plain text extract)
  • Krótki opis (description)
  • Podgląd obrazu (jeśli jest dostępny)
  • Page ID
  • Rozmiar artykułu (bajty)

Możliwości

  • Wyszukiwanie w dowolnym wydaniu językowym Wikipedii (lista wydań)
  • Ustawienie długości snippetu (do 1200 znaków — maksimum MediaWiki TextExtracts)
  • Paginacja do 50 stron × 20 wyników
  • Automatyczne usuwanie duplikatów artykułów między stronami wyników
  • Wsparcie dla proxy i ogólnych ustawień A-Parser

Warianty zastosowania

  • Zbieranie baz linków do artykułów Wikipedii
  • Dobór odpowiednich artykułów według słów kluczowych dla treści i SEO
  • Pobieranie snippetów i opisów dla chatbotów i systemów informacyjnych
  • Dalsza analiza artykułów przez SE::Wikipedia::Article

Zapytania

Jako zapytania należy podawać frazy wyszukiwania, na przykład:

Albert Einstein
Ivan Efremov
Berlin
東京
Kijów

Język wyszukiwania ustawia się w ustawieniach scrapera (Wikipedia language), a nie w zapytaniu.

Podstawienia zapytań

Możesz użyć wbudowanych makr do powielania zapytań.

Warianty wyprowadzania wyników

A-Parser obsługuje elastyczne formatowanie wyników dzięki wbudowanemu silnikowi szablonów Template Toolkit, co pozwala na wyprowadzanie wyników w dowolnej formie, a także w ustrukturyzowanej, np. CSV lub JSON.

Lista linków (domyślnie)

Format wyniku:

$serp.format('$link\n')

Przykład wyniku:

https://en.wikipedia.org/wiki/Albert_Einstein
https://en.wikipedia.org/wiki/Hans_Albert_Einstein
https://en.wikipedia.org/wiki/Religious_and_philosophical_views_of_Albert_Einstein
https://en.wikipedia.org/wiki/Albert_Brooks
https://en.wikipedia.org/wiki/Einstein_family

Format wyniku:

$serp.format('$link\t$anchor\t$snippet\n')

Przykład wyniku:

https://en.wikipedia.org/wiki/Albert_Einstein   Albert Einstein Albert Einstein (14 March 1879 – 18 April 1955) was a German-born theoretical physicist best known for developing the theory of relativity. Einstein also made important contributions to quantum theory. His mass–energy equivalence formula E = mc2, which...
https://en.wikipedia.org/wiki/Hans_Albert_Einstein Hans Albert Einstein Hans Albert Einstein (May 14, 1904 – July 26, 1973) was a Swiss-American engineer, the second child and first son of physicists Albert Einstein and Mileva Marić. He was a professor of hydraulic engineering at the University of California, Berkeley from...
https://en.wikipedia.org/wiki/Religious_and_philosophical_views_of_Albert_Einstein Religious and philosophical views of Albert Einstein Albert Einstein's religious views have been widely studied and often misunderstood. Albert Einstein stated "I believe in Spinoza's God". He did not believe in a personal God who concerns himself with fates and actions of human beings, a view which he...

Wynik w formacie CSV

Format wyniku:

[% FOREACH item IN p1.serp; tools.CSVline(item.link, item.anchor, item.snippet, item.description, item.image, item.pageid, item.size); END %]

Tekst początkowy:

Link,Nagłówek,Snippet,Opis,Obraz,Page ID,Rozmiar

Przykład wyniku:

https://en.wikipedia.org/wiki/Albert_Einstein,"Albert Einstein","Albert Einstein (14 March 1879 – 18 April 1955) was a German-born theoretical physicist best known for developing the theory of relativity. Einstein also made important contributions to quantum theory. His mass–energy equivalence formula E = mc2, which...","German-born theoretical physicist (1879–1955)",https://upload.wikimedia.org/wikipedia/commons/thumb/2/28/Albert_Einstein_Head_cleaned.jpg/330px-Albert_Einstein_Head_cleaned.jpg?utm_source=en.wikipedia.org&utm_campaign=api&utm_content=thumbnail,736,238698
https://en.wikipedia.org/wiki/Hans_Albert_Einstein,"Hans Albert Einstein","Hans Albert Einstein (May 14, 1904 – July 26, 1973) was a Swiss-American engineer, the second child and first son of physicists Albert Einstein and Mileva Marić. He was a professor of hydraulic engineering at the University of California, Berkeley from...","Swiss-American engineer and educator",https://upload.wikimedia.org/wikipedia/commons/c/c9/Hans-Albert-Einstein-1953.jpg?utm_source=en.wikipedia.org&utm_campaign=api&utm_content=thumbnail_unscaled,1373258,14371

Zrzut do JSON

Format wyniku:

[% FOREACH item IN p1.serp;
'{"link":"' _ item.link _ '","anchor":"' _ item.anchor _ '","snippet":"' _ item.snippet _ '"}\n';
END %]

Przykład wyniku:

{"link":"https://en.wikipedia.org/wiki/Albert_Einstein","anchor":"Albert Einstein","snippet":"Albert Einstein (14 March 1879 – 18 April 1955) was a German-born theoretical physicist best known for developing the theory of relativity. Einstein also made important contributions to quantum theory. His mass–energy equivalence formula E = mc2, which..."}
{"link":"https://en.wikipedia.org/wiki/Hans_Albert_Einstein","anchor":"Hans Albert Einstein","snippet":"Hans Albert Einstein (May 14, 1904 – July 26, 1973) was a Swiss-American engineer, the second child and first son of physicists Albert Einstein and Mileva Marić. He was a professor of hydraulic engineering at the University of California, Berkeley from..."}

Możliwe ustawienia

Nazwa parametruWartość domyślnaOpis
Pages count5Liczba stron wyszukiwania (od 1 do 50). Na każdej stronie do 20 wyników
Wikipedia languageenWydanie językowe Wikipedii (en, ru, de, ja, simple, be-tarask itp.). Lista wydań
Snippet length250Długość snippetu w znakach (150–1200). Maksimum API TextExtracts — 1200
wskazówka

API Wikipedii przy głębokiej paginacji może zwracać nakładające się wyniki. Scraper usuwa duplikaty według pageid i zapisuje w logu, ile wyników zostało odrzuconych.