• 01 爬虫入门


    原生爬虫思路

    模拟浏览器请求网页数据(获取html)

    提取数据(从html中提取数据)

    精炼数据(规范格式,如除空格)

    业务实现(对精炼后的数据作需要的处理,如排序)

    程序入口

    举个例子:

    from urllib import request
    import re
    
    # 贵州人才信息网招聘岗位的抓取
    class Spider():
        # 目标所在特征字符串,组中的内容即为目标:招聘岗位
        root_pattern = 'name="thiszw" href="[sS]*?" target="[sS]*?" title="([sS]*?)"'
    
        # 模拟网页请求返回网页数据
        url = "http://www.gzrc.com.cn/SearchResult.php"
        def __fetch_content(self):
            headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0'}
            page1 = request.Request(Spider.url, headers=headers)
            htmls = request.urlopen(Spider.url).read()
            htmls = str(htmls, encoding="GBK")
            return htmls
    
        # 数据提取
        def __analyse(self, page):
            job_name = re.findall(Spider.root_pattern, page)
            return job_name
    
        # 业务处理
        def __show(self,job_list):
            for rank in range(0,len(job_list)):
                print('no.'+str(rank+1)+' : '+job_list[rank])
    
        def go(self):
            page = self.__fetch_content()
            result = self.__analyse(page)
            self.__show(result)
    
    if __name__ == '__main__':
    
        spider = Spider()
        spider.go()
    

      

    爬虫库(写大型爬虫如分布式、多线程)

    Beautiful soup

    scrap

  • 相关阅读:
    临时表学习
    再读《黄金时代》
    shell脚本获取给定年月前一月份及后一月份
    MEMORY_TARGET not supported on this system
    2013年的总结
    windows live writer试试
    入园第一篇
    工作中经常用到的几个字符串和数组操作方法
    小程序获取用户信息失败
    前端性能优化方法概括
  • 原文地址:https://www.cnblogs.com/Scorpicat/p/11788298.html
Copyright © 2020-2023  润新知