اذهب إلى المحتوى
  • 0

كيف قراءة بيانات json من موقع خارجي في JavaScript؟

Abdulazeez Altameemi

السؤال

انا قمت بعمل موقع في بايثون يقوم بتحويل بيانات من الاكسيل الى Json  ورفعته الى heroku ويعرض البيانات فقط 

https://to-adhan.herokuapp.com/

كيف يمكن ان اقرء هذه البيانات في javascript

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

البيانات التي قُمت بإرجاعها ليست على شكل json صحيح ، السرفر قامَ بإرجاعها على شكل سلسة نصية تأكد من الشفرة التي قُمت بكتابتها أو قُم بتضمينها هُنا كما قال وائل وسوف نساعدك إن شاء الله.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 3 دقائق مضت قال مسعود زاهي:

البيانات التي قُمت بإرجاعها ليست على شكل json صحيح ، السرفر قامَ بإرجاعها على شكل سلسة نصية تأكد من الشفرة التي قُمت بكتابتها أو قُم بتضمينها هُنا كما قال وائل وسوف نساعدك إن شاء الله.

from fastapi import FastAPI
import pandas as pd
from datetime import datetime
import json

app = FastAPI()

Machine_date = datetime.today().strftime('%d-%m')


@app.get('/')
def to_pray():
    Machine_date = datetime.today().strftime('%d-%m')
    df = pd.read_excel('Salah-Calendar.xlsx', sheet_name='Table 1', usecols="A:L")
    for row in range(len(df)):
        if df.loc[row]['Date'].strftime('%d-%m') == Machine_date:
            adan = {
                "Date": df.loc[row]['Date'].strftime('%d-%m'),
                "Fajr": df.loc[row]['Fajr'],
                "Fajr Iqama": df.loc[row]['Fajr Iqama'].strftime('%I:%M %p'),
                "Sunrise": df.loc[row]['Sunrise'],
                "Zuhr": df.loc[row]['Zuhr'],
                "Asr": df.loc[row]['Asr'],
                "Maghrib": df.loc[row]['Maghrib'],
                "Isha": df.loc[row]['Isha'],
            }
      
            return json.dumps(adan)

هذه الشيفرة

 

تم التعديل في بواسطة Zx Zx2
كتابة امر اضافي
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

 

بتاريخ 24 دقائق مضت قال Zx Zx2:

from fastapi import FastAPI
import pandas as pd
from datetime import datetime
import json

app = FastAPI()

Machine_date = datetime.today().strftime('%d-%m')


@app.get('/')
def to_pray():
    Machine_date = datetime.today().strftime('%d-%m')
    df = pd.read_excel('Salah-Calendar.xlsx', sheet_name='Table 1', usecols="A:L")
    for row in range(len(df)):
        if df.loc[row]['Date'].strftime('%d-%m') == Machine_date:
            adan = {
                "Date": df.loc[row]['Date'].strftime('%d-%m'),
                "Fajr": df.loc[row]['Fajr'],
                "Fajr Iqama": df.loc[row]['Fajr Iqama'].strftime('%I:%M %p'),
                "Sunrise": df.loc[row]['Sunrise'],
                "Zuhr": df.loc[row]['Zuhr'],
                "Asr": df.loc[row]['Asr'],
                "Maghrib": df.loc[row]['Maghrib'],
                "Isha": df.loc[row]['Isha'],
            }
      
            return json.dumps(adan)

هذه الشيفرة

 

السرفر يعرض البيانات على شكل سلسلة نصية كما أخبرتك لتفادي هذا الأمر وعرضها على شكل Json قُم باستخدام الصنف JSONResponse الذي يسمح بتحويل القاموس adan وعرضه على شكل json : 

from fastapi import FastAPI
import pandas as pd
from datetime import datetime
from fastapi.responses import JSONResponse
# قم باستدعاء الصننف^^^ 
import json

app = FastAPI()

Machine_date = datetime.today().strftime('%d-%m')


@app.get('/')
def to_pray():
    Machine_date = datetime.today().strftime('%d-%m')
    df = pd.read_excel('Salah-Calendar.xlsx', sheet_name='Table 1', usecols="A:L")
    for row in range(len(df)):
        if df.loc[row]['Date'].strftime('%d-%m') == Machine_date:
            adan = {
                "Date": df.loc[row]['Date'].strftime('%d-%m'),
                "Fajr": df.loc[row]['Fajr'],
                "Fajr Iqama": df.loc[row]['Fajr Iqama'].strftime('%I:%M %p'),
                "Sunrise": df.loc[row]['Sunrise'],
                "Zuhr": df.loc[row]['Zuhr'],
                "Asr": df.loc[row]['Asr'],
                "Maghrib": df.loc[row]['Maghrib'],
                "Isha": df.loc[row]['Isha'],
            }
      
            return JSONResponse(content=adan) # استخدمه على هذا الشكل

أما بالنسبة لكيفية قراءتها باستخدام شيفرة جافاسكريبت فأترك المجال للأخ @Wael Aljamal أو أحد الإخوة يجيبونك.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 7 دقائق مضت قال مسعود زاهي:

السرفر يعرض البيانات على شكل سلسلة نصية كما أخبرتك لتفادي هذا الأمر وعرضها على شكل Json قُم باستخدام الصنف JSONResponse الذي يسمح بتحويل القاموس adan وعرضه على شكل json : 


from fastapi import FastAPI
import pandas as pd
from datetime import datetime
from fastapi.responses import JSONResponse
# قم باستدعاء الصننف^^^ 
import json

app = FastAPI()

Machine_date = datetime.today().strftime('%d-%m')


@app.get('/')
def to_pray():
    Machine_date = datetime.today().strftime('%d-%m')
    df = pd.read_excel('Salah-Calendar.xlsx', sheet_name='Table 1', usecols="A:L")
    for row in range(len(df)):
        if df.loc[row]['Date'].strftime('%d-%m') == Machine_date:
            adan = {
                "Date": df.loc[row]['Date'].strftime('%d-%m'),
                "Fajr": df.loc[row]['Fajr'],
                "Fajr Iqama": df.loc[row]['Fajr Iqama'].strftime('%I:%M %p'),
                "Sunrise": df.loc[row]['Sunrise'],
                "Zuhr": df.loc[row]['Zuhr'],
                "Asr": df.loc[row]['Asr'],
                "Maghrib": df.loc[row]['Maghrib'],
                "Isha": df.loc[row]['Isha'],
            }
      
            return JSONResponse(content=adan) # استخدمه على هذا الشكل

أما بالنسبة لكيفية قراءتها باستخدام شيفرة جافاسكريبت فأترك المجال للأخ وائل أو أحد الإخوة يجيبونك.

شكرا لك اخي الكريم و جزاك الله خيراً....دائم مبدع في اجاباتك

 

بتاريخ منذ ساعة مضت قال Wael Aljamal:

أرجو تضمين شيفرة بايثون لكي نعلم كيفية تضمين البيانات

عذراً اخي وائل لم انتبه لاجابتك

الاخ مسعود قام بحل المشكلة

اذا كان بأمكانك مساعدتي في حل مشكلة عرض البيانات في html 

شكرا لك مقدماً

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 6 دقائق مضت قال Zx Zx2:

اذا كان بأمكانك مساعدتي في حل مشكلة عرض البيانات في html 

أرجو تعديل الرابط لنرى التعديلات أو عمل ملف آخر للتجريب

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 20 ساعات قال Wael Aljamal:

تمام، أرجو توضيح السؤال مالذي تريد فعله بالضبط؟

اريد ان استقبل البيانات من هذا الموقع ووضعهم في جدول 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
<body>
    <h2 id="date"></h2>
    <div>
        <table> 
        <tbody>
            <tr>
                <th style="background: white;">Gregorian</th>
                <th style="background: white;">Hijri</th>
            </tr>
            <tr>
                <td id="gregorian"></td>
                <td id="hijri"></td>
                
            </tr>
        </tbody>
            <tr>
                <th>Prayer</th>
                <th>Adhan Time</th>
                <th>Iqama Time</th>
            </tr>
            <tr> 
                <td>Fajr</td>
                <td id="fajr"></td>
                <td id="Fajr_Iqama"></td>
            </tr>
            <tr>
                <td>Sunrise</td>
                <td id="Sunrise"></td>
                <td id="Sunrise_iqama"></td>
            </tr>
            <tr>
                <td>Zuhr</td>
                <td id="Zuhr"></td>
                <td id="Zuhr_Iqama"></td>
            </tr>
            <tr>
                <td>Asr</td>
                <td id="Asr"></td>
                <td id="Asr_Iqama"></td>
            </tr>
            <tr>
                <td>Maghrib</td>
                <td id="Maghrib"></td>
                <td id="Maghrib_Iqama"></td>
            </tr>
            <tr>
                <td>Isha</td>
                <td id="Isha"></td>
                <td id="Isha_Iqama"></td>
            </tr>
        </table> 
    </div>

    <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>

    <script>
    $.getJSON('https://to-adhan.herokuapp.com/', function(data) {

        var fajr =              `<td>${data.Fajr}</td>`
        var Fajr_Iqama =        `<td>${data.Fajr_Iqama}</td>`
        var Sunrise=            `<td>${data.Sunrise}</td>`
        var Sunrise_iqama=      `<td>${data.Sunrise}</td>`
        var Zuhr=               `<td>${data.Zuhr}</td>`
        var Zuhr_Iqama =        `<td>${data.Zuhr_Iqama}</td>`
        var Asr =               `<td>${data.Asr}</td>`
        var Asr_Iqama =         `<td>${data.Asr_Iqama}</td>`
        var Maghrib =           `<td>${data.Maghrib}</td>`
        var Maghrib_Iqama =     `<td>${data.Maghrib_Iqama}</td>`
        var Isha =              `<td>${data.Isha}</td>`
        var Isha_Iqama =        `<td>${data.Isha_Iqama}</td>`



        $("#fajr").html(fajr);
        $("#Fajr_Iqama").html(Fajr_Iqama);
        $("#Sunrise").html(Sunrise);
        $("#Sunrise_iqama").html(Sunrise);
        $("#Zuhr").html(Zuhr);
        $("#Zuhr_Iqama").html(Zuhr_Iqama);
        $("#Asr").html(Asr);
        $("#Asr_Iqama").html(Asr_Iqama);
        $("#Maghrib").html(Maghrib);
        $("#Maghrib_Iqama").html(Maghrib_Iqama);
        $("#Isha").html(Isha);
        $("#Isha_Iqama").html(Isha_Iqama);

    });
        // now date
        $.getJSON('https://api.pray.zone/v2/times/day.json?city=edmonton&date='+new Date().toJSON().slice(0,10).replace(/-/g,'-'), function(data) {

var hijri =         `<td>${data.results.datetime[0].date.hijri}</td>`
var gregorian =     `<td>${data.results.datetime[0].date.gregorian}</td>`

$("#hijri").html(hijri);
$("#gregorian").html(gregorian);
});

    </script>
</body>

انا قبل فترة سئلت عن استقبال البيانات من موقع اخر على شكل json ووضعها في جدول بالجافا سكريبت

انا وجدت الحل هذا الكود اذا احد حاب يستفيد

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...