我一直试图从网页(zeit online,德国报纸)中提取多篇文章,我有一个我要下载文章的网址列表,所以我不需要抓取页面网址。
python的报道包在解析单个页面的内容方面做得非常棒。我需要做的是自动更改网址,直到下载所有文章。不幸的是,我的编码知识有限,并且没有找到办法。如果有人能帮助我,我将非常感激。
我尝试的其中一件事如下:
import newspaper
from newspaper import Article
lista = ['url','url']
for list in lista:
first_article = Article(url="%s", language='de') % list
first_article.download()
first_article.parse()
print(first_article.text)
it returned the following error: unsupported operand type for %:'article' and 'str'
这似乎可以完成这项工作,虽然我希望有更简单的方法来减少苹果和香蕉的使用。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import newspaper
from newspaper import Article
lista = ['http://www.zeit.de/1946/01/unsere-aufgabe', 'http://www.zeit.de/1946/04/amerika-baut-auf', 'http://www.zeit.de/1946/04/bedingung', 'http://www.zeit.de/1946/04/bodenrecht']
apple = 0
banana = lista[apple]
while apple <4 :
first_article = Article(url= banana , language='de')
first_article.download()
first_article.parse()
print(first_article.text).encode('cp850', errors='replace')
apple += 1
banana = lista[apple]
答案 0 :(得分:0)
你得到了例外
它返回了以下错误:%:'article'和'str'
的不支持的操作数类型
因为你填充了错误的变量而在第9行你应该有:
first_article = Article(url="%s" % list, language='de')
这是完整的代码:
import newspaper
from newspaper import Article
lista = ['url','url']
for list in lista:
first_article = Article(url="%s" % list, language='de')
first_article.download()
first_article.parse()
print(first_article.text)