یک ابزار هوشمند تحت وب برای ساخت خودکار اسکرپر (Scraper) وبسایتهای خبری و تحلیل محتوای آنها با استفاده از Google Gemini. این برنامه قادر است با تحلیل ساختار یک سایت، کد پایتون لازم برای استخراج اخبار را تولید کرده و به کاربران اجازه پرسش و پاسخ از محتوای استخراج شده را بدهد.
- ساخت اسکرپر با هوش مصنوعی: با استفاده از مدل
gemini-2.5-pro، برنامه به صورت خودکار ساختار HTML یک وبسایت را تحلیل کرده و کد پایتون لازم برای استخراج اطلاعات را تولید میکند. - ذخیرهسازی و پایداری اسکرپرها: کدهای تولید شده برای هر دامنه در یک فایل
scrapers.jsonذخیره میشوند. این ویژگی باعث میشود در مراجعات بعدی، فرآیند استخراج داده سریعتر و ارزانتر انجام شود. - دو روش دریافت محتوا:
- ساده (Requests): برای وبسایتهای استاتیک و سریع.
- پیشرفته (Selenium): برای وبسایتهای داینامیک که محتوای آنها با جاوااسکریپت بارگذاری میشود.
- پرسش و پاسخ تعاملی (RAG): پس از استخراج اخبار، محتوای متنی به کمک مدل
text-embedding-004به یک پایگاه دانش برداری تبدیل میشود. کاربران میتوانند سوالات خود را در یک رابط چت بپرسند و پاسخهای دقیق مبتنی بر محتوای اخبار دریافت کنند. - ویرایشگر کد و تایید دستی: کاربر میتواند کد تولید شده توسط هوش مصنوعی را قبل از اجرا مشاهده، ویرایش و تایید کند.
- مدیریت امن کلید API: برنامه ابتدا کلید Gemini API را از فایل
secrets.toml(روش استاندارد Streamlit) میخواند و در غیر این صورت به کاربر اجازه ورود موقت آن را میدهد.
برای اجرای این پروژه به صورت محلی، مراحل زیر را دنبال کنید.
- پایتون نسخه 3.9 یا بالاتر
- یک کلید Google Gemini API
git clone https://github.com/saharaite/gemini-scraper.git
cd gemini-scraper# Windows
python -m venv venv
venv\Scripts\activate
# macOS / Linux
python3 -m venv venv
source venv/bin/activateیک فایل با نام requirements.txt در ریشه پروژه ایجاد کرده و محتوای زیر را در آن قرار دهید:
streamlit
requests
beautifulsoup4
google-generativeai
selenium
webdriver-manager-chrome
numpy
lxmlسپس دستور زیر را برای نصب آنها اجرا کنید:
pip install -r requirements.txtبهترین روش برای مدیریت کلید API، استفاده از قابلیت secrets در Streamlit است.
- یک پوشه با نام
.streamlitدر ریشه پروژه خود ایجاد کنید. - داخل این پوشه، یک فایل با نام
secrets.tomlبسازید. - کلید API خود را به شکل زیر در این فایل قرار دهید:
# .streamlit/secrets.toml
GEMINI_API_KEY = "YOUR_GEMINI_API_KEY_HERE"پس از انجام مراحل نصب، با اجرای دستور زیر در ترمینال، برنامه را اجرا کنید:
streamlit run gemini_scraper_app.pyسپس مرورگر خود را باز کرده و به آدرس http://localhost:8501 مراجعه کنید.
این پروژه تحت لایسنس MIT منتشر شده است. برای اطلاعات بیشتر فایل LICENSE را مشاهده کنید.
