作为一个基本的爬虫,主要分为由几个框架所组成

1.爬虫的调度端
2.爬虫的主程序
1.url管理器
2.网页下载器
3.网页解析器
3.爬虫获取的数据的存储

初步设计用到requests,beautifulsoup模块来爬取并解析网页数据,pymysql模块将爬取到的信息保存到数据库

  1. requests
    基本使用

     res=requests.get(url,attr)
    

res.text来获取页面信息

注意:resquests默认用的‘ISO-8859-1’,所以需要转换一下字符集->res.text.encode(‘ISO-8859-1’).decode(‘utf-8’)

attr参数格式

例如传入请求头

    header={
    'User-Agent':'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0'
    }
    requests.get(url,headers=header)

data参数传入post参数

params传入get参数

files传入文件的post参数

files={‘file’:open(‘ex.txt’,’rb’)}

requests.post(url,files=files)

  1. BeautifulSoup
    在取文本的时候碰上的问题:
    1
    2
    3
    4
    <div>
    123
    <a>456</a>
    </div>
    取所有文本的话 直接 get_text()即可,
    只取123 的话 可以使用contents[0]
    contents中其实保存的该节点下所有节点信息,文本也视为节点