文档章节

python爬虫练习

writeademo
 writeademo
发布于 2016/06/20 16:03
字数 541
阅读 57
收藏 0

__author__ = 'user'
#encoding:utf-8
import urllib.request as request
import urllib.parse as parse
import string

print("starting--------------------------")

def
baidu_tieba(url,begin_page,end_page):
    for
i in
range(begin_page,end_page+1):
       
sName=
'e:/test'+str(i).zfill(5)+'.html'
       
print("正在下载第"+str(i)+"个页面,并保存为"+sName)
        m=request.urlopen(url+
str(i)).read()
        with
open(sName,'wb') as file:
           
file.write(m)
        file.close()
if __name__==
"__main__":
   
url="http://tieba.baidu.com/p/"
   
begin_page=1
   
end_page=3
   
baidu_tieba(url,begin_page,end_page)

 

 

 

__author__ = 'user'

import urllib.request as request

import urllib.parse as parse

import string

import re

import os

import urllib.error as error

print("Starting_________________")

def baidu_tieba(url,begin_page,end_page):     count=1

    for i in range(begin_page,end_page+1):         sName='e:/test/'+str(i).zfill(5)+'.html'

        print('正在下载第'+str(i)+'个页面,并保存为'+sName)

        m=request.urlopen(url+str(i)).read()

        dirpath='e:/test/'

        dirname=str(i)

        new_path=os.path.join(dirpath,dirname)

        if not os.path.isdir(new_path):             os.makedirs(new_path)

        page_data=m.decode('utf-8','ignore')

        page_image=re.compile('<img src=\"(.+?)\"')

        for image in page_image.findall(page_data):             pattern=re.compile(r'^http://.*.png$')

            if pattern.match(image):                 try:                     image_data=request.urlopen(image).read()

                    image_path=dirpath+dirname+'/'+str(count)+'.png'

                    count+=1

                    print(image_path)

                    with open(image_path,'wb') as image_file:                         image_file.write(image_data)

                    image_file.close()

                except error.URLError as e:                     print('Download failed')

            with open(sName,'wb') as file:                 file.write(m)

            file.close()

if __name__=="__main__":     url="http://tieba.baidu.com/p/"

    begin_page=1

    end_page=3

    baidu_tieba(url,begin_page,end_page)

 

 

__author__ = 'user'

import urllib

import urllib.request as request

from bs4 import BeautifulSoup

def taobao(url):     response=request.urlopen(url)

    html=response.read()

    data=html.decode('gbk','ignore').encode('utf-8')

    soup=BeautifulSoup(data,"html.parser")

    for list in soup.find_all("h3"):         print(list.string)

if __name__=='__main__':     print("starts-----------------")

    url="http://stackoverflow.com/questions/28745153/importing-bs4-in-python-3-5"

    taobao(url)

 

ImportError: cannot import name 'HTMLParseError'

beautifulsoap怎么加入python

解决bs4在Python 3.5下出现“ImportError: cannot import name 'HTMLParseError'”错误

   升级了Python3.5之后,我使用BeautifulSoup4时候出现了ImportError: cannot import name 'HTMLParseError'的错误。在网上搜索好久资料之后得到了解决方法,原因是BeautifulSoup在4.4.0以前的版本不支持 Python3.5,所以我们需要把我们的BeautifulSoup升级到4.4.0版本以上,就可以使用了。我看到网上有几个回答都是改用 Python3.4,我觉得这种方法容易误导人。

    这里提供两种升级新版BeautifulSoup的方法:

 

1、使用pip升级

在管理员权限下使用命令行输入命令“pip install --upgrade beautifulsoup4”

 

 

或者。。。。

2、使用源码重新安装

卸载原先的BS4=》在http://www.crummy.com/software/BeautifulSoup/bs4 /download/下找到你需要下载的版本下载=》解压文件=》找到根目录下的setup.py=》以管理员权限打开命令行输入“python setup.py install”

 

 

本文转载自:

writeademo
粉丝 27
博文 681
码字总数 256388
作品 0
东城
私信 提问
一个月入门Python爬虫,快速获取大规模数据

数据是创造和决策的原材料,高质量的数据都价值不菲。而利用爬虫,我们可以获取大量的价值数据,经分析可以发挥巨大的价值,比如: 豆瓣、知乎:爬取优质答案,筛选出各话题下热门内容,探索...

Python开发者
2018/04/25
0
0
福利 | Python专场竞技,这些书给你加把力!

端午节将至,各地龙舟备战竞技,粽子部队也整装待发。小编掐指一算,这种热闹的时节,是时候展现真正的技(fu)术(li)了! (“Python号”龙舟闪亮登场!) Python作为当下最流行的编程语言...

2018/06/15
0
0
学Python需要天赋吗?看完弟弟编写的爬虫与爆破脚本,只有汗水!

Python学习记录脚本,希望弟弟通过练习编写脚本一点点提升自己很菜的编程水平~~明天会更好,希望自己越来越强吧。 实现原理 Python3 实现批量查询网站的百度权重以及收录情况,利用的是站长之...

Python新世界
2018/07/24
0
0
Python--windows下安装python

最近有爬虫方面的需求,就学习下python。windows安装python步骤如下 1.下载python python官网下载路径:https://www.python.org/downloads/release/python-372/ 由图可知,我下载的是3.7.2版...

求是科技
02/12
480
0
年薪20万Python工程师进阶(1):Python 资源 + 经典练手项目

Python 越来越火爆,最近自己也在学习。整理下一些 Python 资料,和练手的项目。希望对你学习 Python 有所帮助。 1、入门阶段 1 Python 官网 Python 官网 The Python Tutorialdocs.python.o...

程序员八阿哥
2018/05/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Java 8 Optional:优雅地避免 NPE

本篇文章将详细介绍 Optional 类,以及如何用它消除代码中的 null 检查。在开始之前首先来看下什么是 NPE,以及在 Java 8 之前是如何处理 NPE 问题的。 空指针异常(NullPointException,简称...

武培轩
23分钟前
3
0
CountDownLatch实现的并发框架

目录结构 package com.**.**.base.support.executor;import lombok.NoArgsConstructor;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;imp......

MR_TE
24分钟前
9
0
学习记录(day06-事件、按键修饰符、计算属性)

[TOC] 1.1 事件修饰符/按键修饰符 vue 通过事件修饰符对dom事件细节进行控制 <标签 @事件.修饰符="函数"></标签>.prevent ---阻止浏览器默认行为.stop ---阻止浏览器事件冒泡.e...

庭前云落
44分钟前
6
0
006-Sigle-基于blockstack去中心化博客

本篇文章主要讲解有关基于Blockstack的Sigle是一个去中心化的博客项目; 官网地址:https://www.sigle.io/ Github地址:https://github.com/pradel/sigle 页面展示: 介绍: A beautiful de...

Riverzhou
51分钟前
21
0
驰骋工作流引擎开发平台属性功能的隐藏显示介绍

关键字: 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎. 表单引擎 工作流功能说明 工作流设计 工作流快速开发平台 业务流程管理 bpm工作流系统 java工作流主流框架 自定义...

孟娟
53分钟前
16
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部