• 用python实现爬虫


    代码示例

    
    #!/usr/bin/python
    #  coding: UTF-8
    # coding:utf8
    
    
    import requests
    from bs4 import BeautifulSoup
    import uuid
    import os
    import csv,time
    from os import path
    
    headers = {
        # 如某些网站(如p站)要检查referer,就给他加上
        'User-Agent': 'Mozilla/5.0 (iPad; CPU OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1',
        'content-type': 'application/x-www-form-urlencoded; charset=UTF-8'
    }
    i=0
    file_path = os.path.abspath('.')
    f=open(file_path+'/doubancomment.csv','w+',encoding='utf-8')
    doubancomment=csv.writer(f)
    # 读取所有的url链接
    d=path.dirname(__file__)
    zhhifouUrl=open(path.join(d,'zhhifouUrl.txt')).read()#zhhifouUrl.txt文件中事先存储url链接
    zhhifouUrl_list=str(zhhifouUrl).split('
    ')
    # print(zhhifouUrl_list[0])
    for urlEle in zhhifouUrl_list:
        print(urlEle)
        print("-----现在开始爬取第" + str(i + 1) + '回-----')
        i=i+1
        response=requests.get(url=urlEle,headers=headers)
        print ('encoding:',response.encoding)
        print ('apparent_encoding:',response.apparent_encoding)
        if response.status_code==200:
            response.encoding=response.encoding #下载的页面是什么编码就用什么编码格式 使用默认的编码原则
            soup=BeautifulSoup(response.text,features='html.parser')# 实例化soup对象的两种参数方式
            target=soup.find(id='nr1')  #文章内容开始的id
            li_list=target.find_all('p')
            for content in li_list:
                print(content.get_text())  # 找到p标签的内容s
                f.write(' ' + content.get_text()+ '
    ')
            else:
                pass
            time.sleep(0.5)
    
    f.close()
    print('
    ')
    print('-----抓取完毕!-----')
    

    zhhifouUrl.txt:

    http://www.luoxia.com/minglan/55739.htm
    http://www.luoxia.com/minglan/55738.htm
    http://www.luoxia.com/minglan/55743.htm
    http://www.luoxia.com/minglan/55746.htm
    http://www.luoxia.com/minglan/55750.htm
    http://www.luoxia.com/minglan/55751.htm
    http://www.luoxia.com/minglan/55752.htm
    http://www.luoxia.com/minglan/55754.htm
    http://www.luoxia.com/minglan/55753.htm
    http://www.luoxia.com/minglan/55759.htm
    http://www.luoxia.com/minglan/55762.htm
    http://www.luoxia.com/minglan/55765.htm
    
  • 相关阅读:
    VS2008 查找失效怎么办
    Winfrom弹出下拉编辑控件,DataGridView弹出查询对话框下拉录入,支持TextBox
    修改SQL Server 2005的默认端口
    C#操作XML小结
    金蝶KIS系列 KISBOS 二次开发学习资料 例子 习题 讲解
    Datawindow.net中实现让当前行选中,并且当前行以其他颜色显示
    sqlserver 截取字符串
    python3定时爬虫
    linux下安装pyenv及使用pyenv管理不同的python版本
    CentOS7下安装mysql最快捷方式及mysql远程访问连接实现
  • 原文地址:https://www.cnblogs.com/niuniumother/p/11321321.html
Copyright © 2020-2023  润新知