پلاگین Norconex HTTP Collector Indexer را نصب کنید

این راهنما برای مدیران پلاگین نمایه ساز Norconex HTTP Collector Google Cloud در نظر گرفته شده است، یعنی هر کسی که مسئول دانلود، استقرار، پیکربندی و نگهداری افزونه نمایه ساز است. این راهنما فرض می کند که شما با سیستم عامل های لینوکس، اصول خزیدن وب، XML و Norconex HTTP Collector آشنا هستید.

این راهنما شامل دستورالعمل هایی برای انجام وظایف کلیدی مربوط به استقرار افزونه نمایه ساز است:

  • نرم افزار افزونه ایندکسر را دانلود کنید
  • Google Cloud Search را پیکربندی کنید
  • پیکربندی Norconex HTTP Collector و خزیدن وب
  • خزیدن وب را شروع کنید و محتوا را آپلود کنید

اطلاعات مربوط به وظایفی که سرپرست Google Workspace باید برای نگاشت Google Cloud Search به افزونه نمایه ساز Norconex HTTP Collector انجام دهد در این راهنما ظاهر نمی شود. برای اطلاعات در مورد آن وظایف، به مدیریت منابع داده شخص ثالث مراجعه کنید.

مروری بر پلاگین نمایه ساز کلکسیونر HTTP Norconex Cloud Search

به طور پیش‌فرض، Cloud Search می‌تواند محتوای محصولات Google Workspace مانند Google Docs و Gmail را کشف، فهرست‌بندی و ارائه دهد. می‌توانید با استقرار افزونه نمایه‌ساز برای Norconex HTTP Collector ، یک خزنده وب سازمانی منبع باز، دامنه جستجوی Google Cloud را برای ارائه محتوای وب به کاربران خود گسترش دهید.

فایل های ویژگی های پیکربندی

برای فعال کردن افزونه نمایه ساز برای انجام خزیدن وب و آپلود محتوا در API نمایه سازی، شما به عنوان مدیر افزونه نمایه ساز، اطلاعات خاصی را در طی مراحل پیکربندی که در این سند در مراحل استقرار توضیح داده شده است ارائه می دهید.

برای استفاده از افزونه نمایه ساز، باید ویژگی ها را در دو فایل پیکربندی تنظیم کنید:

  • {gcs-crawl-config.xml} -- شامل تنظیماتی برای Norconex HTTP Collector است.
  • sdk-configuration.properties -- شامل تنظیماتی برای جستجوی Google Cloud است.

ویژگی‌های موجود در هر فایل، افزونه فهرست‌ساز Google Cloud Search و Norconex HTTP Collector را قادر می‌سازد تا با یکدیگر ارتباط برقرار کنند.

خزیدن وب و آپلود محتوا

پس از پر کردن فایل های پیکربندی، تنظیمات لازم برای شروع خزیدن وب را دارید. Norconex HTTP Collector وب را می‌خزد، محتوای سند مربوط به پیکربندی آن را کشف می‌کند و نسخه‌های باینری (یا متنی) اصلی محتوای سند را در API نمایه‌سازی Cloud Search آپلود می‌کند، جایی که ایندکس می‌شود و در نهایت به کاربران شما ارائه می‌شود.

سیستم عامل پشتیبانی شده

افزونه نمایه ساز Google Cloud Search Norconex HTTP Collector باید روی لینوکس نصب شود.

نسخه Norconex HTTP Collector پشتیبانی می شود

افزونه نمایه ساز Google Cloud Search Norconex HTTP Collector از نسخه 2.8.0 پشتیبانی می کند.

پشتیبانی ACL

افزونه نمایه ساز از کنترل دسترسی به اسناد در دامنه Google Workspace با استفاده از لیست های کنترل دسترسی (ACL) پشتیبانی می کند.

اگر ACLهای پیش‌فرض در پیکربندی افزونه جستجوی Google Cloud فعال باشند ( defaultAcl.mode روی غیر از none تنظیم شده و با defaultAcl.* )، افزونه فهرست‌کننده ابتدا سعی می‌کند یک ACL پیش‌فرض ایجاد و اعمال کند.

اگر ACLهای پیش‌فرض فعال نباشند، افزونه اجازه خواندن به کل دامنه Google Workspace را می‌دهد.

برای توصیف دقیق پارامترهای پیکربندی ACL، به پارامترهای رابط ارائه شده توسط Google مراجعه کنید.

پیش نیازها

قبل از استقرار افزونه نمایه ساز، مطمئن شوید که اجزای مورد نیاز زیر را دارید:

  • جاوا JRE 1.8 روی رایانه ای نصب شده است که پلاگین نمایه ساز را اجرا می کند
  • اطلاعات Google Workspace مورد نیاز برای ایجاد روابط بین Cloud Search و Norconex HTTP Collector:

    به طور معمول، سرپرست Google Workspace برای دامنه می‌تواند این اعتبارنامه‌ها را برای شما فراهم کند.

مراحل استقرار

برای استقرار افزونه نمایه ساز، مراحل زیر را دنبال کنید:

  1. Norconex HTTP Collector و نرم افزار افزونه indexer را نصب کنید
  2. Google Cloud Search را پیکربندی کنید
  3. پیکربندی Norconex HTTP Collector
  4. خزیدن وب را پیکربندی کنید
  5. خزیدن وب و آپلود محتوا را شروع کنید

مرحله 1: Norconex HTTP Collector و نرم افزار افزونه نمایه ساز را نصب کنید

  1. نرم افزار Norconex commiter را از این صفحه دانلود کنید.
  2. نرم افزار دانلود شده را در پوشه ~/norconex/ از حالت فشرده خارج کنید
  3. پلاگین commiter را از GitHub کلون کنید. git clone https://github.com/google-cloudsearch/norconex-committer-plugin.git و سپس cd norconex-committer-plugin
  4. نسخه مورد نظر پلاگین commiter را بررسی کنید و فایل ZIP را بسازید: git checkout tags/v1-0.0.3 و mvn package (برای رد شدن از تست ها هنگام ساخت کانکتور، mvn package -DskipTests استفاده کنید.)
  5. cd target
  6. فایل jar پلاگین ساخته شده را در دایرکتوری norconex lib کپی کنید. cp google-cloudsearch-norconex-committer-plugin-v1-0.0.3.jar ~/norconex/norconex-collector-http-{version}/lib
  7. فایل ZIP را که ساخته اید استخراج کنید و سپس فایل را از حالت فشرده خارج کنید: unzip google-cloudsearch-norconex-committer-plugin-v1-0.0.3.zip
  8. اسکریپت نصب را برای کپی کردن jar. افزونه و تمام کتابخانه های مورد نیاز در فهرست راهنمای جمع آوری http اجرا کنید:
    1. تغییر به افزونه commiter استخراج شده که در بالا از حالت فشرده خارج شده است: cd google-cloudsearch-norconex-committer-plugin-v1-0.0.3
    2. $ sh install.sh اجرا کنید و در صورت درخواست، مسیر کامل norconex/norconex-collector-http-{version}/lib به عنوان دایرکتوری هدف ارائه دهید.
    3. اگر فایل‌های jar تکراری یافت شد، گزینه 1 را انتخاب کنید (فقط در صورتی که نسخه اصلی یا همان نسخه Jar هدف را تغییر نام دهید، منبع Jar را کپی کنید).

مرحله 2: Google Cloud Search را پیکربندی کنید

برای اینکه افزونه نمایه ساز به Norconex HTTP Collector متصل شود و محتوای مربوطه را فهرست کند، باید فایل پیکربندی Cloud Search را در فهرست Norconex که Norconex HTTP Collector در آن نصب شده است ایجاد کنید. گوگل توصیه می کند نام فایل پیکربندی Cloud Search را sdk-configuration.properties بگذارید.

این فایل پیکربندی باید شامل جفت‌های کلید/مقدار باشد که یک پارامتر را تعریف می‌کنند. فایل پیکربندی باید حداقل پارامترهای زیر را که برای دسترسی به منبع داده Cloud Search ضروری هستند، مشخص کند.

تنظیم پارامتر
شناسه منبع داده api.sourceId = 1234567890abcdef
مورد نیاز. شناسه منبع جستجوی ابری که توسط سرپرست Google Workspace تنظیم شده است.
حساب خدمات api.serviceAccountPrivateKeyFile = ./PrivateKey.json
مورد نیاز. فایل کلید حساب سرویس Cloud Search که توسط سرپرست Google Workspace برای دسترسی به افزونه نمایه ساز ایجاد شده است.

مثال زیر یک فایل sdk-configuration.properties را نشان می دهد.

#
# data source access
api.sourceId=1234567890abcdef
api.serviceAccountPrivateKeyFile=./PrivateKey.json
#

فایل پیکربندی همچنین می تواند شامل پارامترهای پیکربندی ارائه شده توسط Google باشد. این پارامترها می‌توانند بر نحوه انتقال داده‌ها به Google Cloud Search API تأثیر بگذارند. به عنوان مثال، مجموعه پارامترهای batch.* نحوه ترکیب درخواست ها را مشخص می کند.

اگر پارامتری را در فایل پیکربندی تعریف نکنید، در صورت موجود بودن از مقدار پیش فرض استفاده می شود. برای توضیحات دقیق هر پارامتر، به پارامترهای رابط ارائه شده توسط Google مراجعه کنید.

می‌توانید افزونه نمایه‌ساز را برای پر کردن ابرداده و داده‌های ساختاریافته برای محتوای در حال نمایه‌سازی پیکربندی کنید. مقادیری که باید برای ابرداده ها و فیلدهای داده های ساخت یافته پر شوند را می توان از متا تگ ها در محتوای HTML در حال نمایه سازی استخراج کرد یا مقادیر پیش فرض را می توان در فایل پیکربندی مشخص کرد.

تنظیم پارامتر
عنوان itemMetadata.title.field= movieTitle
itemMetadata.title.defaultValue= Gone with the Wind
به طور پیش فرض، این افزونه HTML title به عنوان عنوان سند در حال نمایه سازی استفاده می کند. در صورت عدم وجود عنوان، می‌توانید به ویژگی فراداده که حاوی مقدار مربوط به عنوان سند است مراجعه کنید یا یک مقدار پیش‌فرض تنظیم کنید.
مهر زمانی ایجاد کرد itemMetadata.createTime.field= releaseDate
itemMetadata.createTime.defaultValue= 1940-01-17
ویژگی متادیتا که حاوی مقدار مهر زمانی ایجاد سند است.
آخرین زمان اصلاح itemMetadata.updateTime.field= releaseDate
itemMetadata.updateTime.defaultValue= 1940-01-17
ویژگی فراداده که حاوی مقدار آخرین مُهر زمانی تغییر برای سند است.
زبان سند itemMetadata.contentLanguage.field= languageCode
itemMetadata.contentLanguage.defaultValue= en-US
زبان محتوا برای اسناد در حال نمایه سازی
نوع شی طرحواره itemMetadata.objectType= movie
نوع شی مورد استفاده توسط سایت، همانطور که در تعاریف شیء طرح منبع داده تعریف شده است. اگر این ویژگی مشخص نشده باشد، رابط هیچ داده ساختاری را فهرست نمی کند.

توجه : این ویژگی پیکربندی به جای یک ویژگی فراداده، به یک مقدار اشاره می کند، و پسوندهای .field و .defaultValue پشتیبانی نمی شوند.

فرمت های زمان تاریخ

قالب‌های Datetime قالب‌های مورد انتظار در ویژگی‌های ابرداده را مشخص می‌کنند. اگر فایل پیکربندی حاوی این پارامتر نباشد، از مقادیر پیش فرض استفاده می شود. جدول زیر این پارامتر را نشان می دهد.

تنظیم

پارامتر

الگوهای زمان تاریخ اضافی

structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXX

فهرستی از الگوهای اضافی java.time.format.DateTimeFormatter که با نقطه ویرگول جدا شده است. الگوها هنگام تجزیه مقادیر رشته برای هر فیلد تاریخ یا تاریخ-زمان در ابرداده یا طرحواره استفاده می شوند. مقدار پیش‌فرض یک لیست خالی است، اما فرمت‌های RFC 3339 و RFC 1123 همیشه پشتیبانی می‌شوند.

مرحله 3: Norconex HTTP Collector را پیکربندی کنید

آرشیو zip norconex-committer-google-cloud-search-{version}.zip شامل یک فایل پیکربندی نمونه، minimum-config.xml است.

گوگل توصیه می کند که پیکربندی را با کپی کردن فایل نمونه شروع کنید:

  1. تغییر به دایرکتوری Norconex HTTP Collector:
    $ cd ~/norconex/norconex-collector-http-{version}/
  2. فایل تنظیمات را کپی کنید:
    $ cp examples/minimum/minimum-config.xml gcs-crawl-config.xml
  3. فایل جدید ایجاد شده را ویرایش کنید (در این مثال، gcs-crawl-config.xml ) و گره های <committer> و <tagger> موجود را همانطور که در جدول زیر توضیح داده شده است اضافه یا جایگزین کنید.
تنظیم پارامتر
<committer> node <committer class="com.norconex.committer.googlecloudsearch. GoogleCloudSearchCommitter">

مورد نیاز. برای فعال کردن افزونه، باید یک گره <committer> به عنوان فرزند گره ریشه <httpcollector> اضافه کنید.
<UploadFormat> <uploadFormat>raw</uploadFormat>
اختیاری. قالبی که در آن افزونه نمایه ساز محتوای سند را به API نمایه ساز Google Cloud Search هدایت می کند. مقادیر معتبر عبارتند از:
  • raw : افزونه نمایه ساز محتوای سند اصلی و تبدیل نشده را فشار می دهد.
  • text : افزونه نمایه ساز محتوای متنی استخراج شده را فشار می دهد.

مقدار پیش فرض raw است.
BinaryContent Tagger <tagger> node <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
اگر مقدار <UploadFormat> raw باشد الزامی است. در این حالت، افزونه نمایه ساز نیاز به فیلد محتوای باینری سند دارد تا در دسترس باشد.

شما باید گره BinaryContentTagger <tagger> به عنوان عنصر فرزند گره <importer> / <preParseHandlers> اضافه کنید.

مثال زیر اصلاحات مورد نیاز در gcs-crawl-config.xml را نشان می دهد.

<committer class="com.norconex.committer.googlecloudsearch.GoogleCloudSearchCommitter">
    <configFilePath>/full/path/to/gcs-sdk-config.properties</configFilePath>
    
    <uploadFormat>raw</uploadFormat>
</committer>
<importer>
  <preParseHandlers>
    <tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
  </preParseHandlers>
</importer>

مرحله 4: خزیدن وب را پیکربندی کنید

قبل از شروع خزیدن وب، باید خزیدن را طوری پیکربندی کنید که فقط شامل اطلاعاتی باشد که سازمان شما می خواهد در نتایج جستجو در دسترس قرار دهد. مهمترین تنظیمات برای خزیدن وب بخشی از گره(های) <crawler> است و می تواند شامل موارد زیر باشد:

  • URL ها را شروع کنید
  • حداکثر عمق خزیدن
  • تعداد رشته ها

این مقادیر پیکربندی را با توجه به نیاز خود تغییر دهید. برای اطلاعات دقیق تر در مورد راه اندازی یک خزیدن وب، و همچنین لیست کامل پارامترهای پیکربندی موجود، به صفحه پیکربندی مجموعه HTTP مراجعه کنید.

مرحله 5: خزیدن وب و آپلود محتوا را شروع کنید

پس از نصب و راه اندازی افزونه نمایه ساز، می توانید آن را به تنهایی در حالت محلی اجرا کنید.

مثال زیر فرض می‌کند که اجزای مورد نیاز در فهرست محلی یک سیستم لینوکس قرار دارند. دستور زیر را اجرا کنید:

$ ./collector-http[.bat|.sh] -a start -c gcs-crawl-config.xml

خزنده را با JEF Monitor نظارت کنید

مانیتور Norconex JEF (Job Execution Framework) یک ابزار گرافیکی برای نظارت بر پیشرفت فرآیندها و مشاغل Norconex Web Crawler (HTTP Collector) است. برای آموزش کامل نحوه راه اندازی این ابزار، به نظارت بر پیشرفت خزنده خود با JEF Monitor مراجعه کنید.