python - 爬虫爬取网页后,如何保存网页?
黄舟
黄舟 2017-04-17 17:47:58
0
4
1399

爬虫从 Internet 中爬取众多的网页作为原始网页库存储于本地,然后网页分析器抽取网页中的主题内容交给分词器进行分词,得到的结果用索引器建立正排和倒排索引,这样就得到了索引数据库,用户查询时,在通过分词器切割输入的查询词组并通过检索器在索引数据库中进行查询,得到的结果返回给用户。

请问这里原始网页库是该怎么实现,是直接存到数据库里吗?还是什么形式?
如果是存到数据库里,应该有哪些字段?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

모든 응답 (4)
黄舟
#coding=utf-8 import urllib.request import re import os ''' Urllib 模块提供了读取web页面数据的接口,我们可以像读取本地文件一样读取www和ftp上的数据 urlopen 方法用来打开一个url read方法 用于读取Url上的数据 ''' def getHtml(url): page = urllib.request.urlopen(url); html = page.read(); return html; def getImg(html): imglist = re.findall('img src="(http.*?)"',html) return imglist html = getHtml("https://www.zhihu.com/question/34378366").decode("utf-8"); imagesUrl = getImg(html); if os.path.exists("D:/imags") == False: os.mkdir("D:/imags"); count = 0; for url in imagesUrl: print(url) if(url.find('.') != -1): name = url[url.find('.',len(url) - 5):]; bytes = urllib.request.urlopen(url); f = open("D:/imags/"+str(count)+name, 'wb'); f.write(bytes.read()); f.flush(); f.close(); count+=1;
    迷茫

    他这里的意思是抓取到的网页直接以文件的方式存放到本地磁盘

      左手右手慢动作

      可以使用对象存储组件。

        Ty80

        推荐大家使用下神箭手云爬虫( http://www.shenjianshou.cn ),完全在云上编写和执行爬虫,不需要配置任何开发环境,快速开发快速实现。

        简单几行 javascript 就可以实现复杂的爬虫,同时提供很多功能函数:反反爬虫、 js 渲染、数据发布、图表分析、反防盗链等,这些在开发爬虫过程中经常会遇到的问题都由神箭手帮你解决。
        采集到的数据:
        (1)可以选择发布到网站,如wecenterwordpressdiscuzdede帝国等cms系统
        (2)也可以发布到数据库
        (3)或者导出文件到本地
        具体设置都在“数据发布&导出”中

          최신 다운로드
          더>
          웹 효과
          웹사이트 소스 코드
          웹사이트 자료
          프론트엔드 템플릿
          회사 소개 부인 성명 Sitemap
          PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!