• python爬虫---->常见python爬虫框架


    一般比较小型的爬虫需求,
    我是直接使用requests库 + bs4就解决了,再麻烦点就使用selenium解决js的异步 加载问题。相对比较大型的需求才使用框架,主要是便于管理以及扩展等。

    一、爬虫技术库-urllib.request和requests库的使用(简单)

    1. requests库
    import requests
    headers = { 'User-Agent': 'Mozilla/5.0 Chrome/64.0.3282.186 Safari/537.36', }
    url = 'http://www.baidu.com'
    response = requests.get(url,headers=headers)
    response.encoding = 'utf-8'
    print(response)
    2. urllib.request库
    from urllib import request
    headers = { 'User-Agent': 'Mozilla/5.0 Chrome/64.0.3282.186 Safari/537.36', }
    url = 'http://www.baidu.com'
    req = request.Request(url, headers=headers)
    response = request.urlopen(req)
    data = response.read().decode('UTF-8')
    print(data)
    二、常见python爬虫框架
    1)Scrapy:很强大的爬虫框架,可以满足简单的页面爬取(比如可以明确获知url pattern的情况)。用这个框架可以轻松爬下来如亚马逊商品信息之类的数据。但是对于稍微复杂一点的页面,如weibo的页面信息,这个框架就满足不了需求了。
    https://www.cnblogs.com/Lijcyy/p/9779196.html
    2)Crawley: 高速爬取对应网站的内容,支持关系和非关系数据库,数据可以导出为JSON、XML等
    3)Portia:可视化爬取网页内容
    4)newspaper:提取新闻、文章以及内容分析
    5)python-goose:java写的文章提取工具
    6)Beautiful Soup:名气大,整合了一些常用爬虫需求。缺点:不能加载JS。
    7)mechanize:优点:可以加载JS。缺点:文档严重缺失。不过通过官方的example以及人肉尝试的方法,还是勉强能用的。
    8)selenium:这是一个调用浏览器的driver,通过这个库你可以直接调用浏览器完成某些操作,比如输入验证码。
    9)cola:一个分布式爬虫框架。项目整体设计有点糟,模块间耦合度较高。

  • 相关阅读:
    008Spring & JPA & Hibernate & MySQL
    007Spring Security
    006Spring面向切面
    005运行时值注入
    004bean作用域
    003自动装配歧义性解决
    002Conditional条件化创建bean
    001profile条件化创建bean
    007API网关服务Zuul
    Sqlserver2008R2 如何使用bak备份文件还原数据库以及对应的失败解决方案
  • 原文地址:https://www.cnblogs.com/Lijcyy/p/9778318.html
Copyright © 2020-2023  润新知