غنای اطلاعات ویکیپدیا بر هیچکس پوشیده نیست. از دریای اطلاعات این وبسایت میتوان برای تحقیقهای تجاری و غیرتجاری و تقریبا در هر زمینهای بهره برد. شرکتها، محققان، دانشمندان داده و حتی افراد صرفا کنجکاو، همهوهمه درزمرهی افرادی قرار میگیرند که سعی میکنند دادههای ویکیپدیا را استخراج و تحلیل کنند.
ویکیپدیا بهمثابهی گنجینهای است که از مجموعهای از صدهامیلیون صفحهی وب و میلیونها مقالهی وزین چندزبانه تشکیل شده است. این امر ویکیپدیا را به بهشت خزندگان وب (Web Crawler) تبدیل کرده است. با جستوجویی ساده در گیتهاب، متوجه میشوید بیش از سیصد خزندهی وب و پروژههای مشابه برای استخراج داده از ویکیپدیا وجود دارد.
وبکراولینگ، تنها راه موجود برای استخراج و تحلیل دادههای ویکیپدیا نیست. برای مثال، ویکیمدیااجازهی استخراج دادهها در فرمتهای متنوعی را میدهد. همچنین، API ویکیمدیا نهتنها برای دریافت اطلاعات، بلکه برای ایجاد باتها و تعامل با مقالات بهطور برنامهنویسیشده استفاده میشود.
در آموزش زیر، روی ابزار Mixnode تمرکز میکنیم که استخراج و تحلیل دادهها از ویکیپدیا با استفاده از کوئریهای SQL را فراهم میآورد. برای استفاده از این ابزار باید با SQL آشنا باشید.
Mixnode اجازه میدهد با وب مانند پایگاه داده برخورد کنید. با استفاده از Mixnode میتوانید کوئری بنویسید و آن را روی وب اجرا کنید. با اجرای کوئری مدنظر Mixnode بهطور خودکار صفحات لازم برای پاسخ به کوئری را پیدا میکند.
مثالهای زیر نحوهی کارکرد Mixnode و استخراج و تحلیل دادهها را شفافتر میکند.
select
url
from
pages
where
url_domain = 'wikipedia.org' url نمایانگر آدرس صفحه استpages جدولی است که هر ردیف آن مطابق با صفحهی منحصربهفرد در وب استurl_domain = 'wikipedia.org' مطمئن میشویم که فقط صفحات ویکیپدیا و سابدامینهای آن (مانند en.wikipedia.org) مدنظر قرار میگیرند. اگر بخواهید فقط در ویکیپدیای فارسی جستوجو کنید، کافی است عبارت fa.wikipedia.org را جایگزین کنید.select
url,
css_text_first(content, 'h1#firstHeading') as title
from
pages
where
url_domain = 'wikipedia.org'
and
url like '%/wiki/%'css_text_first(content, 'h1#firstHeading') عنوان مقالهی ویکیپدیا را خروجی میدهد. با نگاهی به سورس HTML مقالات ویکیپدیا، پی میبریم h1#firstHeading مسیر CSS برای عنوان مقاله است. css_text_first نیز تابعی است که اجازهی استخراج اولین مورد از انتخابگر CSS را میدهد. content در اینجا سورس کامل HTML صفحه است.
url like '%/wiki/%' استفاده میکنیم تا مطمئن شویم نتایجمان فقط به مقالات مربوط میشود.select
url,
css_text_first(content, 'h1#firstHeading') as title
from
pages
where
url_domain = 'wikipedia.org'
and
url like '%/wiki/%'
and
contains(content, 'Elon Musk')contains() تابعی است که اجازهی بررسی وجود یک زیررشته در یک رشته را میدهد. با استفاده از contains(content, 'elon musk') مطمئن میشویم که در نتایجمان عبارت Elon Musk موجود است.select
url,
css_text_first(content, 'h1#firstHeading') as title,
cardinality(css_text(content, 'ol.references li')) as reference_count
from
pages
where
url_domain = 'wikipedia.org'
and
url like '%/wiki/%'
order by reference_count descol.references قابلدسترسی است. css_text(content, 'ol.references li') متن تمامی منابع مقاله را به ما میدهد و ازآنجاییکه فقط به تعداد نیاز داریم، پس از تابع cardinality() استفاده میکنیم که اندازهی یک آرایه را برمیگرداند. desc در خط آخر مقالات را بهصورت نزولی برایمان مرتب میکند. برای مرتبسازی بهصورت صعودی از asc استفاده کنید.select
url,
css_text_first(content, 'h1#firstHeading') as title,
cardinality(words(css_text_first(content, '#content'))) as article_length
from
pages
where
url_domain = 'wikipedia.org'
and
url like '%/wiki/%'
order by article_length descwords() آرایهای شامل تمامی کلمات یک متن را برمیگرداند. استفاده از cardinality(words(css_text_first(content, '#content'))) as article_length، تعداد کلمات یک مقاله را به ما میدهد.select
avg(cardinality(words(css_text_first(content, '#content')))) as average_article_length
from
pages
where
url_domain = 'wikipedia.org'
and
url like '%/wiki/%'avg() میانگین دادههای ورودیاش را برمیگرداند که در اینجا، تعداد کلمات تمامی مقالات ویکیپدیاست.select
url,
remove_left(css_text_first(content, 'h1#firstHeading'), 'Talk:') as title,
cardinality(words(css_text_first(content, '#content'))) as discussion_length
from
pages
where
url_domain = 'wikipedia.org'
and
url like '%/wiki/Talk:%'
order by discussion_length descselect
url,
css_text_first(content, 'h1#firstHeading') as title
from
pages
where
url_domain = 'wikipedia.org'
and
url like '%/wiki/%'
and
contains_any(content, array['href="https://www.zoomit.ir', 'href="http://www.zoomit.ir', 'href="https://zoomit.ir', 'href="http://zoomit.ir'])دیدگاه شما چیست؟ تجربهی استفاده از این ابزار را داشتهاید؟ ابزارهای دیگری برای تحلیل و استخراج دادهها از ویکیپدیا میشناسید؟ نظرات خود را با ما و کاربران زومیت بهاشتراک بگذارید.
هفتهی گذشته، خبری منتشر شد مبنی بر اینکه فیسبوک اطلاعات و آنچه کاربران در این سایت انجام میدهند، با شرکتهای دیگر مانند مایکروسافت و آمازون به اشتراک میگذارد. این موضوع تعدادی از ما را مجبور کرد حساب کاربری فیسبوک و دیگر برنامههای این شرکت مانند اینستاگرام و واتساپ را حذف کنیم (شاید نه برای اولینبار). اگر شما حساب اینستاگرام خود را حذف کنید، تمام تصاویرتان نیز با آن حذف خواهد شد؛ مگر اینکه قبل از حذف حساب کاربری، از آنها پشتیبان تهیه کنید.
بهطور کلی دانلود تصاویر اینستاگرام و تهیه نسخهی پشتیبان از آنها ایدهی خوبی است؛ حتی اگر قصد نداشته باشید این شبکهی اجتماعی را ترک کنید. بااینحال، اگر قصد داشته باشید این سرویس را ترک کنید، این کار تنها راه برای ازدستندادن تصاویر دلخواهتان است. درادامه، مراحل انجام این کار را به شما آموزش میدهیم:
ابتدا وارد برنامهی اینستاگرام شوید و گزینهی پروفایل را از گوشهی پایین سمت راست صفحه انتخاب کنید. در این مرحله، گزینهی منو را از گوشهی بالای سمت راست (به شکل سه خط رویهم) انتخاب و سپس، گزینهی تنظیمات (Settings) را در منوی کشویی لمس کنید.
در اواسط منو بعدی، گزینهای بهنام دانلود دادهها (Data Download) خواهید دید. آن را انتخاب و در صفحهی جدید، ایمیل خود را بررسی کنید. اگر صحیح بود، گزینهی درخواست دانلود (Request Download) را لمس کنید.
دانلود اطلاعات بلافاصله انجام نخواهد شد، درعوض، اینستاگرام وقتی تصاویرتان کاملا آمادهی دانلود شد، ایمیلی برای شما ارسال میکند که حاوی لینک برای دانلود آنها است. این فرایند ممکن است تا ۴۸ ساعت طول بکشد؛ بنابراین، صبور باشید و منتظر ایمیل بمانید.
وقتی تمامی اطلاعات و تصاویر خود را دریافت کردید، آزادانه و بدون نگرانی دربارهی حذفشدن تصاویر دلخواهتان، حساب کاربری خود را میتوانید حذف کنید.
هدف ویکیپدیا این است که دانش را به تمامی افراد جهان برساند؛ اما آنها پذیرفتهاند که اکثریت اطلاعات موجود در این سایت انگلیسی هستند. ازاینرو، ویکیمدیا، شرکت بنیانگذار ویکیپدیا، روز گذشته اعلام کرد که به منظور استفاده از قابلیتهای ترجمهی هوش مصنوعی گوگل، با این شرکت قرارداد همکاری امضا کرده است.
بهموجب این قرارداد، گوگل ترنسلیت بهعنوان ابزار ترجمهی درونی ویکیپدیا به این سایت اضافه خواهد شد و بیهیچ هزینهای بهعنوان یک گزینه درکنار مترجم متنباز اپرتیوم (Apertium) قرار خواهد گرفت. اپرتیوم تا به امروز ۴۰۰ هزار مقاله را ترجمه کرده است. روش انجام کار به شیوهی قبل خواهد بود؛ یعنی مترجم متن، چه گوگل باشد چه اپرتیوم، ابتدا متن را ترجمه میکند و سپس نیروی انسانی بهعنوان ویراستار وارد عمل میشود تا اشتباهات را اصلاح کند.
مدت زیادی بود که ویراستاران ویکیپدیا خواستار اضافه شدن ابزار ترجمهی دیگری مثل گوگل بودند. مترجم گوگل بهلطف بهرهگیری از هوش مصنوعی یکی از پیشرفتهترین ابزارهای مترجم است که ۱۵ زبان بیشتر از اپرتیوم پشتیبانی میکند. این ۱۵ زبان شامل زولو، هوسا، کردی کرمانجی و یوروبا است. این زبانها شاید در سطح جهانی چندان معروف نباشند، اما این مسئله چیزی از اهمیت موضوع برای گویشوران این زبانها کم نمیکند. بهعنوان مثال Zulu، توسط ۱۲ میلیون نفر صحبت میشود؛ اما تنها ۱۰۰۰ مقالهی به این زبان در ویکیپدیا موجود است.

تصویری از ابزار ترجمهی ویکیپدیا به همراه گزینهی ترجمهی گوگل
بنیاد ویکیمدیا در قسمت سؤالات متداول به برخی نگرانیها که ممکن است برای نویسندگان ویکیپدیا پیش بیاید پاسخ داده و اذعان داشته است که هیچگونه دادهی شخصی با گوگل به اشتراک گذاشته نخواهد شد. متون ترجمهشده توسط مترجم گوگل همانند سایر متون ویکیپدیا در دسترس همگان خواهند بود. بهعلاوه هیچگونه برند یا لوگوی گوگل به سایت افزوده نخواهد شد. مدتزمان این توافق تنها یک سال است و پس از آن قابلتمدید خواهد بود؛ هرچند که ویکیمدیا میتواند هرزمان که بخواهد این قرارداد را بههم بزند.
این نکته که ترجمههای انجامشده بهصورت رایگان در دسترس همه خواهند بود، بسیار حائز اهمیت است؛ از این جهت که میتوان از آنها جهت ارتقاء سایر ابزارهای ترجمه از قبیل ابزار متنباز اپرتیوم استفاده کرد. این ایدهی خوبی است که اگر میخواهید دانش را بهصورت رایگان در دسترس مردم قرار دهید، ابزار لازم را به آنها بدهید تا خودشان این کار انجام دهند.
نفوذگران تکنیک جدیدی را برای مبهمسازی کُدهای صفحات جعلی در طراحی حملات فیشینگ ابداع کردهاند و از Web Fonts بهگونهای استفاده میکنند که پیادهسازی و جایگزینی کُدهای رمزگونه مانند متن ساده به نظر میآید. هنگامی که مرورگر کُدهای صفحات جعلی را ترجمه میکند و برای کاربر نمایش میدهد، کاربر صفحهای را مشاهده میکند که تنها برای دزدیدن اطلاعات شخصی طراحی شده است و کُدگذاری آن بهگونهای توسط توابع خاصی از جاوااسکریپت صورت میگیرد که تشخیص آن سخت است.
استفاده از جایگزینی کاراکترها بهصورت رمزگونه، تکنیک جدیدی بهشمار نمیآید و بازگردانی کُدها و متنها به حالت اولیه توسط سیستمهای خودکار سختی به همراه ندارد. اما نوآوری جدیدی که در این حملات به کار رفته، عدم استفاده از توابع جاوااسکریپت برای جایگزینی بوده و بهجای آن، استفاده از کُدهای CSS است. این حمله فقط با استفاده از دو فونت woff و woff2 که با الگوریتم رمزنگاری base64 مخفی شدهاند، صورت میگیرد. محققان توانایی تشخیص صفحات جعلی را کسب کردهاند که از فونتهای خاص برای ترجمه شدن در مرورگر و نمایش بهصورت متن ساده استفاده میکنند.

طبق گزارش محققان، فونت WOFF باید خروجی استانداردی از حروف الفبا را برای استفاده در صفحات وب فراهم سازد و انتظار میرود توانایی جایگزینی آن با هر یک از حروف الفبا بهصورت کامل امکانپذیر باشد؛ اما مشاهده میکنیم در حملهی فوق، متن مورد استفاده توسط این فونت در صفحه وجود ندارد ولی در مرورگر نمایش داده میشود. همچنین برای فریب بیشتر در این نوع از حملات فیشینگ، نفودگران از فُرمت SVG استفاده میکنند که میتواند ازطریق کُد، کاراکترهای مورد نظر روی مرورگر را به کاربر نمایش دهد و راه تشخیص را سختتر کند.

این روش از ژوئن ۲۰۱۸ توسط نفوذگران در ابزارهای اتوماتیک مخصوص حملات Phishing مورد استفاده قرار گرفته است که محققان در ماه گذشته موفق به کشف آن شدهاند. این نشان میدهد که ممکن است در گذشته فریمورکهای مخرب دیگری برای طراحی حملات فیشینگ این روش استفاده کرده باشند.
مدتی است گوگل اعلام کرده قصد دارد شبکهی اجتماعی گوگلپلاس را ۱۳فروردین تعطیل کند؛ ازاینرو، زومیت تصمیم گرفته نحوهی تهیهی نسخهی پشتیبان از اطلاعات حساب گوگلپلاس را در قالب مقالهای کوتاه آموزش دهد تا کاربران این شبکهی اجتماعی دیگر نگران ازدسترفتن اطلاعاتشان نباشند.
گوگلپلاس، تلاش ناموفق گوگل برای ساخت شبکهی اجتماعی موفق، در آستانه تعطیلشدن است. در مهر امسال، گوگل بهدنبال بُروز نقصهای امنیتی اعلام کرد درصدد است گوگلپلاس (Google Plus) را تعطیل کند. اندکی بعد، بهدلیل بُروز دوبارهی نقص امنیتی دیگر گوگل تصمیم گرفت شبکهی اجتماعیاش را ۴ ماه زودتر، یعنی در فروردین تعطیل کند. اکنون، این غول جستوجوی دنیای اینترنت بهطور رسمی برنامهی زمانیاش برای تعطیلی گوگلپلاس را منتشر کرده است.
این شرکت مشهور حوزهی اینترنت به ناکامی گوگلپلاس اعتراف کرده است. بااینحال، شواهد حاکی از آن است که این شبکهی اجتماعی هنوز کاربران وفادار خود را دارد؛ کاربرانی که نگران این موضوعاند بعد از گوگلپلاس به کدام شبکهی اجتماعی کوچ کنند. تاکنون، چندین انجمن گوگلپلاس هم برای پرداختن به این موضوع تشکیل شدهاند.
شما چه به گوگلپلاس وفادار باشید و چه از ماهها یا سالها پیش آن را رها کرده باشید، شاید هنوز بخواهید از پستها، عکسها، کامنتها و هر محتوای دیگری کپی بگیرید، قبل از آنکه این شبکهی اجتماعی بهکلی ناپدید شود.
پشتیبانگیری از اطلاعات و محتوای گوگلپلاس کار سختی نیست. اپلیکیشنهایی غیررسمی وجود دارند که این روند را تسهیل میکنند. برای نمونه، میتوان Google+ Exporter را نام برد. بااینحال، روش سادهتر آن است که از ابزار رسمی خود گوگل، یعنی Google Takeout، استفاده کنید. درادامه، چگونگی استفاده از Google Takeoutبرای پشتیبانگرفتن از دادههای گوگلپلاس را توضیح میدهیم.
ابتدا، به حساب گوگل خود وارد شوید و از این آدرس به Google Takeout بروید. پس از ورود به صفحهی Google Takeout، با فهرست بلندبالایی از سرویسهای گوگل مواجه میشوید که درصورت لزوم میتوانید دادههای مربوط به هریک را دانلود کنید. با فعالکردن دکمههایی که درمقابل هریک از این سرویسها قرار داده شده، میتوانید انتخاب کنید دادهی مربوط به کدام سرویس ذخیره شوند. شایان ذکر است همهی دکمهها در حالت پیشفرض فعال هستند.

به این نکته توجه کنید درکنار هریک از این دکمهها، فلشهای روبهپایینی وجود دارد که بهوسیلهی آن میتوانید فرمت مدنظرتان را برای دانلود اطلاعات انتخاب کنید.
فرمت دادههای ذخیرهشدنی متناسب با نوع داده متغیر است و میتواند در قالبهایی همچون vCard و HTML و JSON باشد.
خدمات متفاوتی در زمینهی گوگلپلاس وجود دارند که میتوان دانلود کرد. درادامه، به برخی از آنها اشاره میکنیم:
دادههای این بخش فقط در قالب HTML دردسترس هستند.
دادههای این قسمت به مخاطبان شما مربوط هستند و میتوانید آنها را در قالبهای vCard ،JSON ،CSV و HTML دانلود کنید.
با فعالکردن دکمهی این قسمت، میتوانید دادههای مربوطبه همهی انجمنها یا انجمنهای دلخواه خود را در قالب HTML یا JSON دانلود کنید.
دادههای این قسمت به محتوای پستهای شما در گوگلپلاس مربوط هستند. در این بخش، میتوانید کل پست یا نوع بهخصوصی از دادهی مربوطبه پستها را دانلود کنید. این دادهها عبارتانداز: عکسها، مجموعهها، پستها، گزارش فعالیت و رویدادها. فرمتهای دردسترس برای این دادهها بهصورت HTML و JSON هستند؛ بهاستثنای عکسها.
با فعالکردن دکمهی این بخش، میتوانید دادههای مربوطبه نمایه یا همان پروفایل گوگلپلاستان را دانلود کنید.
پس از اینکه خدمات مدنظر گوگلپلاستان را فعال و همچنین فرمت دادهها را انتخاب کردید، در مرحلهی بعد، باید انتخاب کنید دادههایتان در کدام فرمت فشردهسازی شوند. دو فرمت tgz و zip برای انتخاب وجود دارند. همچنین، باید حداکثر اندازهی فایلهای آرشیوشدهی خود را انتخاب کنید. اگر دادههایتان خیلی حجیم باشند، به چند فایل تقسیم میشوند. حداکثر اندازهی انتخابی برای هر فایل آرشیوشده ۵۰ گیگابایت است؛ اما اگر حجمی بیش از ۲ گیگابایت را انتخاب کنید با این اخطار مواجه میشوید: «فایلهای Zip حجیمتر از ۲ گیگابایت در قالب zip64 فشرده میشوند. شاید سیستمعاملهای قدیمیتر نتوانند این قالب فایل را بازکنند. برنامههایی خارجی وجود دارند که میتوانند برای خارجکردن فایلهای zip64 از حالت فشرده استفاده شوند.»