python爬虫小记

python爬虫
一、什么是爬虫?
    网络爬虫,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。
二、爬虫的学习路线
    1.首先学习python的基本语法知识
    2.学习python爬虫常用到的几个重要内置库urllib,http等,用于下载网页
    3.学习正则表达式,Beautiful Soup(bs4),Xpath(lxml)等网页解析工具
    4.开始一些简单的网页爬取,了解爬取数据过程
    5.了解爬虫的一些反爬机制,header,robot,时间间隔,代理ip,隐含字段
    6.了解一些特殊网站的爬取,解决登陆,Cookie,动态网页等问题
    7.了解爬虫与数据库的结合,如何将爬取数据进行储存
    8.学习应用python的多线程、多进程进行爬取,提高爬虫效率
    9.学习爬虫的框架,Scrapy等
    10.学习分布式爬虫(数量量庞大的需求)
三、urllib库
    python内置一个urllib库,这个内置库的使用可以完成向服务器发出请求并后的网页的功能
    >>importurllib
    >>dir(urllib)

    ['__builtins__','__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__','__path__', '__spec__', 'error', 'parse', 'request', 'response']
    
    request的使用
    1.request请求最简单的操作是用urlopen方法,代码如下:
    import urllib.request
    response = urllib.request.urlopen('http://python.org/')
    result=response.read().decode('utf-8')
    print(result)
四、xPath介绍
    xPath即为XML语言,它是一种用来确定XML(标准通用对的标记语言的子集)文档中某部分位置的语言。Xpath基于XML的树状结构,有不同类型的节点,包括元素节点,提供的数据结构中找寻节点的能力
    1.获取某个标签的内容,获取a标签的所有内容
    写法一:
    html = etree.HTML(wb_data)
    html_data = html.xpath('/html/body/div/ul/li/a')
    print(html)
    for i in html_data:
    print(i.text)
 
    结果
    <Element html at 0x12fe4b8>
    first item
    second item
    third item
    fourth item
    fifth item
    
    写法二:
    html = etree.HTML(wb_data)
    html_data = html.xpath('/html/body/div/ul/li/a/text()')
    print(html)
    for i in html_data:
    print(i)
    结果:
    <Element html at 0x138e4b8>
    first item
    second item
    third item
    fourth item
    fifth item
    2.打开读取HTML文件
    #使用parse打开html的文件
    html = etree.parse('test.html')
    html_data = html.xpath('//*')<br>#打印是一个列表,需要遍历
    print(html_data)
    for i in html_data:
    print(i.text)

    
    
    
    
    

猜你喜欢

转载自blog.csdn.net/z1131321467/article/details/86724618
今日推荐