Terinspirasi oleh permintaan akan kesederhanaannya dan didukung oleh lxml untuk kecepatannya:
"Koran adalah perpustakaan python yang luar biasa untuk mengekstraksi & mengkurasi artikel." -- tweet oleh Kenneth Reitz, Penulis permintaan
"Koran menghadirkan ekstraksi artikel bergaya Instapaper." -- Catatan Perubahan
Surat kabar adalah perpustakaan Python3 ! Atau, lihat cabang Python2 kami yang sudah usang dan bermasalah
>>> from newspaper import Article
>>> url = ' http://fox13now.com/2013/12/30/new-year-new-laws-obamacare-pot-guns-and-drones/ '
>>> article = Article(url)
>>> article.download()
>>> article.html
'<!DOCTYPE HTML><html itemscope itemtype="http://...'
>>> article.parse()
>>> article.authors
['Leigh Ann Caldwell', 'John Honway']
>>> article.publish_date
datetime.datetime(2013, 12, 30, 0, 0)
>>> article.text
'Washington (CNN) -- Not everyone subscribes to a New Year's resolution...'
>>> article.top_image
'http://someCDN.com/blah/blah/blah/file.png'
>>> article.movies
['http://youtube.com/path/to/link.com', ...]
>>> article.nlp()
>>> article.keywords
['New Years', 'resolution', ...]
>>> article.summary
'The study shows that 93% of people ...'
>>> import newspaper
>>> cnn_paper = newspaper.build( ' http://cnn.com ' )
>>> for article in cnn_paper.articles:
>>> print (article.url)
http://www.cnn.com/2013/11/27/justice/tucson-arizona-captive-girls/
http://www.cnn.com/2013/12/11/us/texas-teen-dwi-wreck/index.html
...
>>> for category in cnn_paper.category_urls():
>>> print (category)
http://lifestyle.cnn.com
http://cnn.com/world
http://tech.cnn.com
...
>>> cnn_article = cnn_paper.articles[ 0 ]
>>> cnn_article.download()
>>> cnn_article.parse()
>>> cnn_article.nlp()
...
>>> from newspaper import fulltext
>>> html = requests.get( ... ).text
>>> text = fulltext(html)
Surat kabar dapat mengekstrak dan mendeteksi bahasa dengan lancar . Jika tidak ada bahasa yang ditentukan, Surat Kabar akan mencoba mendeteksi bahasa secara otomatis.
>>> from newspaper import Article
>>> url = ' http://www.bbc.co.uk/zhongwen/simp/chinese_news/2012/12/121210_hongkong_politics.shtml '
>>> a = Article(url, language = ' zh ' ) # Chinese
>>> a.download()
>>> a.parse()
>>> print (a.text[: 150 ])
香港行政长官梁振英在各方压力下就其大宅的违章建
筑(僭建)问题到立法会接受质询,并向香港民众道歉。
梁振英在星期二(12月10日)的答问大会开始之际
在其演说中道歉,但强调他在违章建筑问题上没有隐瞒的
意图和动机。 一些亲北京阵营议员欢迎梁振英道歉,
且认为应能获得香港民众接受,但这些议员也质问梁振英有
>>> print (a.title)
港特首梁振英就住宅违建事件道歉
Jika Anda yakin bahwa seluruh sumber berita menggunakan satu bahasa, silakan gunakan api yang sama :)
>>> import newspaper
>>> sina_paper = newspaper.build( ' http://www.sina.com.cn/ ' , language = ' zh ' )
>>> for category in sina_paper.category_urls():
>>> print (category)
http://health.sina.com.cn
http://eladies.sina.com.cn
http://english.sina.com
...
>>> article = sina_paper.articles[ 0 ]
>>> article.download()
>>> article.parse()
>>> print (article.text)
新浪武汉汽车综合 随着汽车市场的日趋成熟,
传统的“集全家之力抱得爱车归”的全额购车模式已然过时,
另一种轻松的新兴 车模式――金融购车正逐步成为时下消费者购
买爱车最为时尚的消费理念,他们认为,这种新颖的购车
模式既能在短期内
...
>>> print (article.title)
两年双免0手续0利率 科鲁兹掀背金融轻松购_武汉车市_武汉汽
车网_新浪汽车_新浪网
Hanya perlu satu klik
Lihat The Docs untuk panduan lengkap dan rinci menggunakan koran.
Tertarik untuk menambahkan bahasa baru untuk kami? Lihat: Dokumen - Menambahkan bahasa baru
>>> import newspaper
>>> newspaper.languages()
Your available languages are:
input code full name
ar Arabic
be Belarusian
bg Bulgarian
da Danish
de German
el Greek
en English
es Spanish
et Estonian
fa Persian
fi Finnish
fr French
he Hebrew
hi Hindi
hr Croatian
hu Hungarian
id Indonesian
it Italian
ja Japanese
ko Korean
lt Lithuanian
mk Macedonian
nb Norwegian (Bokmål)
nl Dutch
no Norwegian
pl Polish
pt Portuguese
ro Romanian
ru Russian
sl Slovenian
sr Serbian
sv Swedish
sw Swahili
th Thai
tr Turkish
uk Ukrainian
vi Vietnamese
zh Chinese
Jalankan ✅ pip3 install newspaper3k
✅
BUKAN ⛔ pip3 install newspaper
⛔
Di python3 Anda harus menginstal newspaper3k
, bukan newspaper
. newspaper
adalah perpustakaan python2 kami. Meskipun menginstal koran itu mudah dengan pip, Anda akan mengalami masalah yang dapat diperbaiki jika Anda mencoba menginstal di ubuntu.
Jika Anda menggunakan Debian/Ubuntu , instal menggunakan yang berikut ini:
Instal perintah pip3
diperlukan untuk menginstal paket newspaper3k
:
$ sudoapt-get install python3-pip
Versi pengembangan Python, diperlukan untuk Python.h:
$ sudoapt-get install python-dev
persyaratan lxml:
$ sudoapt-get install libxml2-dev libxslt-dev
Agar PIL mengenali gambar .jpg:
$ sudoapt-get install libjpeg-dev zlib1g-dev libpng12-dev
CATATAN: Jika Anda menemukan masalah saat menginstal libpng12-dev
, coba instal libpng-dev
.
Unduh corpora terkait NLP:
$ curl https://raw.githubusercontent.com/codelucas/newspaper/master/download_corpora.py | python3
Instal distribusi melalui pip:
$ pip3 instal koran3k
Jika Anda menggunakan OSX , instal menggunakan yang berikut ini, Anda dapat menggunakan homebrew atau macports:
$ minuman instal libxml2 libxslt $ buatan instal libtiff libjpeg webp little-cms2 $ pip3 instal koran3k $ curl https://raw.githubusercontent.com/codelucas/newspaper/master/download_corpora.py | python3
Jika tidak , instal dengan yang berikut ini:
CATATAN: Kemungkinan besar Anda masih perlu menginstal pustaka berikut melalui manajer paket Anda
libjpeg-dev
zlib1g-dev
libpng12-dev
libxml2-dev
libxslt-dev
python-dev
$ pip3 instal koran3k $ curl https://raw.githubusercontent.com/codelucas/newspaper/master/download_corpora.py | python3
Sumbangan Anda sangat dihargai! Mereka akan membebaskan saya untuk mengerjakan proyek ini lebih lanjut, untuk melakukan hal-hal seperti: menambahkan fitur baru, dukungan perbaikan bug, mengatasi masalah terkait perpustakaan.
Jika Anda ingin berkontribusi dan meretas proyek surat kabar, silakan mengkloning versi pengembangan repositori ini secara lokal:
git clone git://github.com/codelucas/newspaper.git
Setelah Anda memiliki salinan sumbernya, Anda dapat menyematkannya ke dalam paket Python Anda, atau menginstalnya ke dalam paket situs Anda dengan mudah:
$ pip3 instal -r persyaratan.txt $ python3 setup.py instal
Jangan ragu untuk mencoba rangkaian pengujian kami, semuanya diejek!:
$ python3 tes/unit_tests.py
Berencana mengubah algoritme teks lengkap kami? Tambahkan parameter fulltext
:
$ python3 tes/unit_tests.py teks lengkap
Lihat demo online yang berfungsi di sini: http://newspaper-demo.herokuapp.com
Ini adalah demo online lain yang berfungsi: http://newspaper.chinazt.cc/
Ditulis dan dikelola oleh Lucas Ou-Yang.
Parse.ly mensponsori beberapa pekerjaan di surat kabar, khususnya berfokus pada ekstraksi otomatis.
Surat kabar menggunakan banyak kode parsing python-goose. Lihat lisensi mereka di sini.
Silakan kirim email & hubungi saya jika Anda mengalami masalah atau hanya ingin membicarakan masa depan perpustakaan ini dan ekstraksi berita secara umum!