دسته بندی ها
12:59 1399/11/20

گرفتن اطلاعات از وب پیج بدون نیاز به web api

مشخصات سوال کننده :
کاربر : hoeinsmart     امتیاز کاربر : ‎−1     رتبه کاربر : 7100
دسته بندی : Asp.net Core Asp.net Mvc Asp.net Web Form

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 3405
هوش مصنوعی

پاسخ هوش مصنوعی

برای گرفتن اطلاعات از یک وب سایت بدون نیاز به web API، می توانید از تکنیک های وب اسکرپینگ (Web Scraping) استفاده کنید. وب اسکرپینگ به معنی استخراج داده ها از وب سایت هاست. برای انجام این کار معمولاً از کتابخانه های مختلف در زبان های برنامه نویسی استفاده می شود.

در زبان پایتون، یکی از محبوب ترین کتابخانه ها برای وب اسکرپینگ، BeautifulSoup است. این کتابخانه به شما این امکان را می دهد تا تگ های HTML را تجزیه و تحلیل کرده و اطلاعات مورد نظر خود را استخراج کنید.

اینجا یک نمونه کد برای استفاده از BeautifulSoup و requests برای واکشی اطلاعات از یک صفحه وب آورده شده است:

import requests
from bs4 import BeautifulSoup

url = 'https://example.com'  # آدرس وب سایت مورد نظر
response = requests.get(url)

soup = BeautifulSoup(response.text, 'html.parser')

# برای پیدا کردن یک عنصر خاص می توانید از select یا find استفاده کنید
data = soup.find('div', class_='example-class')  # تگ و کلاس مورد نظر خود را وارد کنید

if data:
    print(data.text)  # متن داخل عنصر را چاپ کنید
else:
    print('Element not found')

علاوه بر BeautifulSoup، کتابخانه های دیگری مانند Scrapy و lxml نیز وجود دارند که می توانید برای وب اسکرپینگ استفاده کنید.

همچنین، برای واکشی اطلاعات از سایت ها با محتوای دینامیک (که با جاوااسکریپت بارگذاری می شوند)، می توانید از Selenium استفاده کنید. این ابزار به شما اجازه می دهد تا مرورگر را به طور خودکار کنترل کنید و اطلاعات را جمع آوری کنید.

در نهایت، قبل از شروع به وب اسکرپینگ، حتماً به قوانین و سیاست های سایت مورد نظر توجه کنید تا از ایجاد مشکلات قانونی جلوگیری کنید.

به این پاسخ امتیاز بدهید    0
امتیاز: - رتبه: -
پاسخ دهنده : fateme 14:54 1399/11/20

ببینید اطلاعاتی که شما از یک سایت می گیرید باید از دیتابیس اون سایت دریافت بشه. به دیتابیس یک سایت هم به صورت مستقیم هیچ موقع دسترسی وجود نداره و باید حتما در قالب Web Api باشه. اصلا اگر قرار بود هر کسی بتونه اطلاعات رو خودش از یک سایت بگیره دیگه Web Api ها برای چی به وجود اومدن ؟ اون دوستتون که می فرمایید اطلاعات رو بدون داشتن Web Api میخونده یا اینکه به اطلاعات دیتابیس اون سایت دسترسی داشته و مستقیم از دیتابیس سایت داشته اطلاعات رو می خونده و شایدم توسط جی کوئری بین تگ های Html سایت مورد نظر جستجو می کرده و یک سری اطلاعات رو میخونده که این روش اصلا منطقی نیست و مطمئنا نمیشه اطلاعات درست و حسابی هم بدست آورد چون در صورت کوچکترین تغییر در سایت اصلی همه چیز بهم میریزه.

در مجموع بنده فکر نمیکنم روش شناخته شده ای برای این کار وجود داشته باشه.

به این پاسخ امتیاز بدهید    ‎−1
امتیاز: 1635 رتبه: 2
1 نظر
hoeinsmart : خیر اینطوری نیست. شما میتونید از روشWeb scraping اطلاعات یک سایت رو پردازش و دریافت کتید.

امتیاز کاربر : ‎−1   رتبه کاربر : 7100   تاریخ ثبت : 07:13 1400/02/02
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود