Apakah mungkin untuk menanamkan output HTML yang diberikan ke dalam output IPython?
Salah satu caranya adalah menggunakan
from IPython.core.display import HTML
HTML('<a href="http://example.com">link</a>')
atau (alias sel multiline IPython)
%%html
<a href="http://example.com">link</a>
Yang mengembalikan tautan yang diformat, tetapi
- Tautan ini tidak membuka browser dengan halaman web itu sendiri dari konsol . Notebook IPython mendukung rendering yang jujur.
- Saya tidak tahu bagaimana cara membuat
HTML()
objek di dalam, katakanlah, daftar ataupandas
tabel yang dicetak. Anda bisa melakukannyadf.to_html()
, tetapi tanpa membuat tautan di dalam sel. - Output ini tidak interaktif di konsol PyCharm Python (karena itu bukan QT).
Bagaimana saya bisa mengatasi kekurangan ini dan membuat keluaran IPython sedikit lebih interaktif?
python
html
ipython
jupyter-notebook
Anton Tarasenko
sumber
sumber
HTML()
halnya, tapi saya masih tidak bisa menyelesaikan item 1 dan 2.Jawaban:
Ini sepertinya bekerja untuk saya:
Caranya adalah dengan membungkusnya dalam "tampilan" juga.
Sumber: http://python.6.x6.nabble.com/Printing-HTML-within-IPython-Notebook-IPython-specific-prettyprint-tp5016624p5016631.html
sumber
Beberapa waktu yang lalu Jupyter Notebooks mulai menghapus JavaScript dari konten HTML [ # 3118 ]. Berikut adalah dua solusi:
Melayani HTML Lokal
Jika Anda ingin menyematkan halaman HTML dengan JavaScript di halaman Anda sekarang, hal termudah untuk dilakukan adalah menyimpan file HTML Anda ke direktori dengan notebook Anda dan kemudian memuat HTML sebagai berikut:
Melayani Remote HTML
Jika Anda lebih suka solusi yang di-host, Anda dapat mengunggah halaman HTML Anda ke "ember" Layanan Web Amazon di S3, mengubah pengaturan pada ember itu sehingga menjadikan ember menjadi situs web statis, lalu gunakan komponen Iframe di buku catatan Anda:
Ini akan membuat konten HTML dan JavaScript Anda dalam iframe, sama seperti yang Anda bisa di halaman web lain:
sumber
Terkait: Saat membangun kelas,
def _repr_html_(self): ...
dapat digunakan untuk membuat representasi HTML khusus untuk instance-nya:akan dirender sebagai:
Untuk info lebih lanjut lihat dokumen IPython .
Contoh lanjutan:
Will render:
sumber
Memperluas pada @Harmon di atas, sepertinya Anda dapat menggabungkan
display
danprint
pernyataan bersama ... jika perlu. Atau, mungkin lebih mudah untuk hanya memformat seluruh HTML Anda sebagai satu string dan kemudian menggunakan tampilan. Either way, fitur yang bagus.Keluaran sesuatu seperti ini:
Halo Dunia!
Berikut tautannya:
www.google.com
beberapa teks tercetak lagi ...
Teks paragraf di sini ...
sumber