ได้รับแรงบันดาลใจจากคำขอเพื่อความเรียบง่ายและขับเคลื่อนโดย lxml เพื่อความเร็ว:
"หนังสือพิมพ์เป็นห้องสมุดหลามที่น่าทึ่งสำหรับการแยกและรวบรวมบทความ" -- ทวีตโดย Kenneth Reitz ผู้เขียนคำขอ
"หนังสือพิมพ์นำเสนอการแยกบทความสไตล์ Instapaper" -- บันทึกการเปลี่ยนแปลง
หนังสือพิมพ์เป็นห้องสมุด Python3 ! หรือดูสาขา Python2 ที่เลิกใช้แล้วและมีข้อบกพร่อง ของเรา
>>> 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)
หนังสือพิมพ์สามารถแยกและตรวจจับภาษา ได้อย่างราบรื่น หากไม่มีการระบุภาษา หนังสือพิมพ์จะพยายามตรวจจับภาษาโดยอัตโนมัติ
>>> 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)
港特首梁振英就住宅违建事件道歉
หากคุณแน่ใจว่าแหล่งข่าว ทั้งหมด เป็นภาษาเดียว ให้ใช้ API เดียวกันได้เลย :)
>>> 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利率 科鲁兹掀背金融轻松购_武汉车市_武汉汽
车网_新浪汽车_新浪网
ใช้เวลาเพียงคลิกเดียว
ลองอ่าน The Docs เพื่อดูคำแนะนำโดยละเอียดโดยใช้หนังสือพิมพ์
สนใจที่จะเพิ่มภาษาใหม่ให้เราหรือไม่? อ้างถึง: เอกสาร - การเพิ่มภาษาใหม่
>>> 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
เรียกใช้ ✅ pip3 install newspaper3k
✅
ไม่ใช่ dict pip3 install newspaper
ไม่ติด
บน python3 คุณต้องติดตั้ง newspaper3k
ไม่ใช่ newspaper
newspaper
คือห้องสมุด python2 ของเรา แม้ว่าการติดตั้งหนังสือพิมพ์จะง่ายดายด้วย pip แต่คุณจะพบปัญหาที่แก้ไขได้หากคุณพยายามติดตั้งบน Ubuntu
หากคุณใช้ Debian / Ubuntu ให้ติดตั้งโดยใช้สิ่งต่อไปนี้:
ติดตั้งคำสั่ง pip3
ที่จำเป็นในการติดตั้งแพ็คเกจ newspaper3k
:
$ sudo apt-get ติดตั้ง python3-pip
เวอร์ชันการพัฒนา Python ที่จำเป็นสำหรับ Python.h:
$ sudo apt-get ติดตั้ง python-dev
ข้อกำหนด lxml:
$ sudo apt-get ติดตั้ง libxml2-dev libxslt-dev
เพื่อให้ PIL จดจำภาพ .jpg:
$ sudo apt-get ติดตั้ง libjpeg-dev zlib1g-dev libpng12-dev
หมายเหตุ: หากคุณพบปัญหาในการติดตั้ง libpng12-dev
ให้ลองติดตั้ง libpng-dev
ดาวน์โหลดองค์กรที่เกี่ยวข้องกับ NLP:
$ curl https://raw.githubusercontent.com/codelucas/newspaper/master/download_corpora.py | หลาม3
ติดตั้งการกระจายผ่าน pip:
$ pip3 ติดตั้งหนังสือพิมพ์3k
หากคุณใช้ OSX ให้ติดตั้งโดยใช้สิ่งต่อไปนี้ คุณสามารถใช้ทั้ง homebrew หรือ macports:
$ ชงติดตั้ง libxml2 libxslt $ ชงติดตั้ง libtiff libjpeg webp little-cms2 $ pip3 ติดตั้งหนังสือพิมพ์3k $ curl https://raw.githubusercontent.com/codelucas/newspaper/master/download_corpora.py | หลาม3
มิฉะนั้น ให้ติดตั้งดังต่อไปนี้:
หมายเหตุ: คุณยังคงต้องติดตั้งไลบรารีต่อไปนี้ผ่านตัวจัดการแพ็คเกจของคุณ
libjpeg-dev
zlib1g-dev
libpng12-dev
libxml2-dev
libxslt-dev
: libxml2-dev libxslt-devpython-dev
$ pip3 ติดตั้งหนังสือพิมพ์3k $ curl https://raw.githubusercontent.com/codelucas/newspaper/master/download_corpora.py | หลาม3
การบริจาคของคุณได้รับการชื่นชมอย่างมาก! พวกเขาจะให้ฉันมีเวลาทำงานในโครงการนี้มากขึ้น เพื่อดำเนินการต่างๆ เช่น การเพิ่มคุณสมบัติใหม่ การสนับสนุนการแก้ไขข้อบกพร่อง การจัดการข้อกังวลกับห้องสมุด
หากคุณต้องการมีส่วนร่วมและแฮ็กโครงการหนังสือพิมพ์ คุณสามารถลอกแบบเวอร์ชันพัฒนาของที่เก็บนี้ในเครื่องได้:
โคลนคอมไพล์ git://github.com/codelucas/newspaper.git
เมื่อคุณมีสำเนาของซอร์สแล้ว คุณสามารถฝังมันลงในแพ็คเกจ Python ของคุณ หรือติดตั้งลงในแพ็คเกจไซต์ของคุณได้อย่างง่ายดาย:
$ pip3 ติดตั้ง -r ข้อกำหนด txt $ python3 setup.py ติดตั้ง
ลองชุดทดสอบของเราได้ตามใจชอบ ทุกอย่างถูกล้อเลียน!:
$ python3 การทดสอบ/unit_tests.py
วางแผนที่จะปรับแต่งอัลกอริธึมข้อความแบบเต็มของเราหรือไม่? เพิ่มพารามิเตอร์ fulltext
:
$ python3 การทดสอบ/unit_tests.py ข้อความแบบเต็ม
ดูการสาธิตออนไลน์ที่ใช้งานได้ที่นี่: http://newspaper-demo.herokuapp.com
นี่เป็นอีกหนึ่งการสาธิตออนไลน์ที่ใช้งานได้: http://newspaper.chinazt.cc/
ประพันธ์และดูแลโดย Lucas Ou-Yang
Parse.ly สนับสนุนงานบางอย่างในหนังสือพิมพ์ โดยเน้นไปที่การดึงข้อมูลอัตโนมัติโดยเฉพาะ
หนังสือพิมพ์ใช้รหัสแยกวิเคราะห์ของ python-goose จำนวนมาก ดูใบอนุญาตของพวกเขาที่นี่
โปรดส่งอีเมลและติดต่อฉันหากคุณพบปัญหาหรือเพียงต้องการพูดคุยเกี่ยวกับอนาคตของห้องสมุดนี้และการแยกข่าวโดยทั่วไป!