Rss 如何用python阅读网站内容

Rss 如何用python阅读网站内容,rss,html-parsing,python-2.7,beautifulsoup,lxml,Rss,Html Parsing,Python 2.7,Beautifulsoup,Lxml,我正在尝试写一个程序,它可以阅读任何网站的文章(帖子),这些文章可能包括Blogspot或Wordpress博客/任何其他网站。至于编写与几乎所有可能使用HTML5/XHTML等编写的网站兼容的代码。。我曾想过使用RSS/Atom提要作为提取内容的基础 然而,由于RSS/Atom提要通常可能不包含网站的全部文章,我想使用feedparser从提要中收集所有“post”链接,然后从相应的URL中提取文章内容 我可以获得网站中所有文章的URL(包括摘要,即,文章内容显示在提要中),但我想访问整个文章

我正在尝试写一个程序,它可以阅读任何网站的文章(帖子),这些文章可能包括Blogspot或Wordpress博客/任何其他网站。至于编写与几乎所有可能使用HTML5/XHTML等编写的网站兼容的代码。。我曾想过使用RSS/Atom提要作为提取内容的基础

然而,由于RSS/Atom提要通常可能不包含网站的全部文章,我想使用
feedparser
从提要中收集所有“post”链接,然后从相应的URL中提取文章内容

我可以获得网站中所有文章的URL(包括摘要,即,文章内容显示在提要中),但我想访问整个文章数据,我必须使用相应的URL

我遇到了各种库,如
BeautifulSoup
lxml
等。。(各种HTML/XML解析器)但我真的不知道如何获得文章的“精确”内容(我假设“精确”意味着所有超链接、iFrame、幻灯片等数据仍然存在;我不想要CSS部分)


那么,有人能帮我吗?

获取所有链接页面的HTML代码非常简单

困难的部分是准确地提取您要查找的内容。如果您只是需要
标记中的所有代码,那么这也不是什么大问题;提取所有文本同样简单。但是如果你想要一个更具体的子集,你有更多的工作要做

我建议您下载requests和BeautifulSoup模块(都可以通过
easy\u install requests/bs4
或更好的
pip install requests/bs4
获得)。“请求”模块使获取页面变得非常简单

以下示例获取rss提要并返回三个列表:

  • linksoups
    是从提要链接的每个页面的BeautifulSoup实例列表
  • linktext
    是从提要链接的每个页面的可见文本列表
  • linkimageurls
    是一个列表,其中包含从提要链接的每个页面中嵌入的所有图像的
    src
    -URL
    • e、 g.
      [['/pageone/img1.jpg','/pageone/img2.png'],['/pagetwo/img1.gif','logo.bmp']
导入请求,bs4 #请求提要的内容并从其内容创建BeautifulSoup对象 response=requests.get('http://rss.slashdot.org/Slashdot/slashdot') responsesup=bs4.BeautifulSoup(response.text) linksoups=[] 链接文本=[] LinkImageURL=[] #迭代所有…标记并填写三个列表:一个是 #链接页面,一个包含所有可见文本,另一个包含所有嵌入文本的URL #图像 对于响应中的链接up.find_all('link'): url=link.text linkresponse=requests.get(url)#使用URLPrasse添加对相对url的支持 soup=bs4.BeautifulSoup(linkresponse.text) linksoups.append(汤) linktext.append(soup.find('body').text) #将body标记内部标记之间的所有文本追加到第二个列表 images=soup.find_all('img')) ImageURL=[] #获取每个属性的src属性
这可能是您项目的粗略起点。

获取所有链接页面的HTML代码非常简单

困难的部分是准确地提取您要查找的内容。如果您只是需要
标记中的所有代码,那么这也不是什么大问题;提取所有文本同样简单。但是如果你想要一个更具体的子集,你有更多的工作要做

我建议您下载requests和BeautifulSoup模块(都可以通过
easy\u install requests/bs4
或更好的
pip install requests/bs4
获得)。“请求”模块使获取页面变得非常简单

以下示例获取rss提要并返回三个列表:

  • linksoups
    是从提要链接的每个页面的BeautifulSoup实例列表
  • linktext
    是从提要链接的每个页面的可见文本列表
  • linkimageurls
    是一个列表,其中包含从提要链接的每个页面中嵌入的所有图像的
    src
    -URL
    • e、 g.
      [['/pageone/img1.jpg','/pageone/img2.png'],['/pagetwo/img1.gif','logo.bmp']
导入请求,bs4 #请求提要的内容并从其内容创建BeautifulSoup对象 response=requests.get('http://rss.slashdot.org/Slashdot/slashdot') responsesup=bs4.BeautifulSoup(response.text) linksoups=[] 链接文本=[] LinkImageURL=[] #迭代所有…标记并填写三个列表:一个是 #链接页面,一个包含所有可见文本,另一个包含所有嵌入文本的URL #图像 对于响应中的链接up.find_all('link'): url=link.text linkresponse=requests.get(url)#使用URLPrasse添加对相对url的支持 soup=bs4.BeautifulSoup(linkresponse.text) linksoups.append(汤) linktext.append(soup.find('body').text) #将body标记内部标记之间的所有文本追加到第二个列表 images=soup.find_all('img')) ImageURL=[] #获取每个属性的src属性
这可能是您项目的一个粗略起点。

到目前为止您尝试了什么?你想要HTML、图像和网站的所有文件,还是只想要抓取HTML的一部分?请具体一点。@塞尔克考虑了一篇博客文章,我想把信息准确地写下来。(保存CSS)。为什么不试试wget呢?到目前为止你都试了些什么?你想要HTML、图像和网站的所有文件,还是只想要抓取HTML的一部分?请具体一点。@塞尔克考虑了一篇博客文章,我想把信息准确地写下来。(保存CSS)。为什么不试试
wget
呢?为什么要使用
请求
?我只是觉得它比urllib、urllib2或url更方便实用