Python学习之简单网页爬虫

0x00案例   爬取博客园某页面的所有图片并下载到本地

连续搞了一周的python,收获颇多,主要还是锻炼了自己的脾气。。。话不多说,先贴上脚本

#coding:utf-8

import urllib2
import re

url="https://www.cnblogs.com/peterpan0707007/p/7620048.html"
headers={‘User-Agent‘:‘Mozilla/5.0 (Windows NT 10.0; WOW64; rv:59.0) Gecko/20100101 Firefox/59.0‘}
req=urllib2.Request(url,headers=headers)
resp=urllib2.urlopen(req).read()
data=re.compile(r‘http:.+\.png‘).findall(resp)  #正则匹配png图片
#print data
for i in data:
    with open(‘result.txt‘,‘a‘) as fw:
        fw.write(i+‘\n‘)

with open(‘result.txt‘,‘r‘) as fr:
    for line in fr.readlines():
        response=urllib2.urlopen(line).read()
        filename=line.strip(‘\n‘).split(‘-‘)[2]+‘.png‘
        with open(filename,‘wb‘) as fw:
            fw.write(response)
    print ‘done‘

运行结果

原文地址:https://www.cnblogs.com/peterpan0707007/p/8723892.html

时间: 2024-11-08 17:27:50

Python学习之简单网页爬虫的相关文章

python学习第一弹:爬虫(抓取博客园新闻)

前言 说到python,对它有点耳闻的人,第一反应可能都是爬虫~ 这两天看了点python的皮毛知识,忍不住想写一个简单的爬虫练练手,JUST DO IT 准备工作 要制作数据抓取的爬虫,对请求的源页面结构需要有特定分析,只有分析正确了,才能更好更快的爬到我们想要的内容. 打开博客园任何一个新闻页面,比如https://news.cnblogs.com/n/570973/,思路是通过这个源页面,并且根据页面中的“上一篇”.“下一篇”等链接,源源不断的爬取其它新闻内容. 浏览器访问https://

python爬取简单网页

requets requests是python实现的简单易用的HTTP库,使用起来比urllib简洁很多 因为是第三方库,所以使用前需要cmd安装 pip install requests 安装完成后import一下,正常则说明可以开始使用了. 基本用法: requests.get()用于请求目标网站,类型是一个HTTPresponse类型 mport requests response = requests.get('http://www.baidu.com') print(response.

Python学习---模拟微信网页登录180410

WEB微信 网页登录的猜想: a. 访问页面出现二维码 b. 长轮询监听是否已经扫码并且点击确认 c. 如何进行会话保持 d. 如何获取用户列表 e. 如何发送消息(接收消息) 过程:访问微信官网[https://wx.qq.com/]  --> 打开微信[已登录]扫一扫  -->  扫描网页图片 App内获取数据都是通过RUL进行获取的 长轮询: 发送一次请求后,就一直在等待消息的返回,如果超过规定时间后,就结束该请求,发送下次的请求. 轮 询: 定时的不停的交替的发送请求到服务器,不等待消

Python学习 —— 实现简单爬虫

为了加快学习python3.x于是直接看了许多有实际操作的小项目,查了许多资料后写了这个脚本,这个脚本主要是爬取百度图片'东方幻想乡'的图片,但发现有几个问题: 1.图片会重复两次. 2.图片只有81张,只匹配了fm=27的图片... 下面给出代码: from urllib import request import re class CrawlJPG: #定义一个爬取图片的类 def __init__(self): # 构造函数 print('Link start!') def __GetHt

Python简单网页爬虫

由于Python2.x与Python3.x存在很的差异,Python2.x调用urllib用指令urllib.urlopen(), 运行时报错:AttributeError: module 'urllib' has no attribute 'urlopen' 原因是在Python3.X中应该用urllib.request. 下载网页成功后,调用webbrowsser模块,输入指令webbrowsser .open_new_tab('baidu.com.html') true open('bai

Python 简单网页爬虫

网上的妹子图爬虫:只爬取一个人物相册 import requests from bs4 import BeautifulSoup headers = { 'User-Agent':'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)', 'Referer':'http://www.mzitu.com' } # 初始链接 start_url = 'https://www.mzitu.com/161470' start_html = requests

python实现一个简单的爬虫

今天第一次写爬虫,感觉非常有趣!,中途也遇到了许多问题,所以写篇博客- 目标:爬取豆瓣编程类书籍中9分以上的 刚接触爬虫,说下我的认识(不一定准确^_^) 我们知道网页的呈现也是用编程语言写出来的,有源码,每个网页我们都可以查看它的源码,我的浏览器快捷键是Ctrl+U, 一般点击右键就可以看见查看源码.因为要爬取豆瓣的数据,那看看下图豆瓣图书页面的部分源码 它所对应的数据是这样的 那么我们知道了,网页上所能看见的每个数据在源码上都能找到,有的点击会跳转也是因为源码上链接着其他地方. 所以我们直接

python学习-ansible简单使用1

一.介绍 Ansible 一种集成 IT 系统的配置管理.应用部署.执行特定任务的开源平台,是 AnsibleWorks 公司名下的项目,该公司由 Cobbler 及 Func 的作者于 2012 年创建成立. Ansible 基于 Python 语言实现,由 Paramiko 和 PyYAML 两个关键模块构建. Ansible 特点: >> 部署简单,只需在主控端部署 Ansible 环境,被控端无需做任何操作.>> 默认使用 SSH(Secure Shell)协议对设备进行管

第一次接触python学习最简单的print

1 # -*- coding:utf-8 -*- 2 print "hello world" 3 print("hello world") 这里面使用了2中print方式,下面会逐行解释代码并说明2中print方式区别在哪里 # -*- coding:utf-8 -*- #这行代码的意思是使用utf-8编码格式,主要用于中文 1 print "hello world" #print""代码格式在python 2.7版本中使用