Cách dễ nhất để nhận tất cả các bài viết về những người từ Wikipedia là gì? Tôi biết tôi có thể tải xuống một bãi chứa tất cả các trang, nhưng sau đó làm cách nào để lọc những trang đó và chỉ nhận được những thông tin về mọi người? Tôi cần nhiều như tôi có thể nhận được (tốt hơn một triệu) để sử dụng bất kỳ loại API có lẽ không phải là một lựa chọn.Làm cách nào để nhận tất cả bài viết về những người từ Wikipedia?
Trả lời
Kể từ khi bài viết về người thường chứa mẫu Persondata, bạn chỉ có thể tìm kiếm tất cả các bài viết có chứa Persondata. Bạn có thể tìm thấy một truy vấn API cho mẫu thực hiện điều đó ở đây:
Does the Wikipedia API support searches for a specific template?
Nếu bạn sắp triển khai, về cơ bản những gì bạn cần là tập trung vào "infobox dữ liệu" trong kết xuất XML.
tham khảo: http://code.google.com/p/infobox2rdf/
Hoặc bạn cũng có thể kiểm tra các http://www.freebase.com hoặc http://dbpedia.org
Tính đến năm 2014, bạn có một lựa chọn: Query WikiData cho tất cả các đơn vị hợp tài sản có giá trị instance of
(P31)human
(Q5).
danh sách đầy đủ của con người: https://www.wikidata.org/wiki/Special:WhatLinksHere/Q5
Từ danh sách đó, lọc ra bất cứ điều gì mà không có một sex or gender
(P21), để thoát khỏi các trang như “nhà khoa học”
Bằng cách này, bạn không cần theo dõi những mẫu nào được sử dụng cho mọi người trong mỗi và mọi ấn bản ngôn ngữ khác nhau (có 285) của Wikipedia.
Tôi thực sự không biết những gì bạn đang yêu cầu, ngoài hơn một triệu bài viết Wikipedia về mọi người (không phải là chủ đề phù hợp cho SO). –
Chính xác thì ý của bạn là gì? Bạn có yêu cầu tư vấn về cách thực hiện một con nhện web không? –
Không, tôi không nghĩ rằng việc kích hoạt là thích hợp trong trường hợp này. Có thể tải xuống tệp kết xuất của wikipedia. Câu hỏi đặt ra là làm thế nào để lọc tệp kết xuất XML và chỉ nhận các trang về mọi người. – Johnny