通过互联网采集

/ 3评 / 0

    经过前两天的折腾也大概对数据采集慢慢形成概念,在表面来看人工肉眼能够检索到的数据是非常有限的,即浅网(Surface Web),这一部分只占到互联网资源的百分之十左右,也就是搜索引擎能够抓取到的地方,至于真正的数据到底有多少,无法估量。但值得庆幸的是基于http协议的网页虽然有些部分搜索引擎抓取不到,但是爬虫可以。有了前面的一些折腾,来电新鲜的:

    在采取数据之前至少得明确目标,依旧是那个熟悉的百度:


     上面的程序从https://baidu.com开始,随机的从一个外链跳转的另一个外链。


    可以看到百度周边的一些网页,文库 学术什么的。

    也可以添加一些新的部分:手机网站上发现的所有外链列表:

    这样程序流程如下:

    这里遇到一个问题:如何解决301重定向问题?(是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。

    重定向( redirect)允许一个网页在不同的域名下显示。重定向有两种形式:
服务器端重定向,网页在加载之前先改变了 URL
客户端重定向,有时你会在网页上看到“ 10 秒钟后页面自动跳转到……”之类的消息,表示在跳转到新 URL 之前网页需要加载内容。
    服务器端重定向,通常不用担心。如果用
Python 3.x 版本的 urllib 库,它会自动处理重定向。不过要注意,有时候要采集的页面的 URL 可能并不是当前所在页面的 URL
尝试使用Scrapy采集

    在实际的使用当中往往我们都在重复一件相同的事情:找出页面的所有的链接,跳转至新的页面,然后狗住继续执行这样的一个操作。这里可以使用Scrapy来帮助你大幅度降低网页链接查找和识别。这个Python库可以说是我py2.7的 福音23333.

    安装Scrapy:pip install Scrapy(如果报错超时就pip --default-timeout=100 install -U pip后再次尝试,还不行的话https://pypi.python.org/simple/scrapy/手动滑稽吧)

   安装完成之后我们得先创建工作环境:

    使用cmd 执行命令:scrapy startproject src 其中src是你想创建的工作路径。在哪里执行就会在 哪里创建。

    然后将项目导入pychrom


       

    接下来继续:在spiders中添加一个新的.py,并修改items.py:

    然后添加begin.py作为启动:

    最终目录为:


    开始配置信息:



    此刻便可以进行运行:(若此时py的import库出现问题请自行重装:0.0因为我就是出异常了哎)

贴上来先暂存,哪天改正填平这个坑了就改掉QAQ:


3条回应:“通过互联网采集”

  1. NoString说道:

    这个吃我缩进=-=MD

  2. NoString说道:

    还有这个正则表达式网上生产的和python解读好像不太一样。。。我拿自己的站点测试会出现一些奇怪的问题。。容我缓缓 😕

  3. 怷昹说道:

    历害了弢老铁

发表评论

电子邮件地址不会被公开。 必填项已用*标注