爬虫python代码-python爬虫(附源码)
声明:本文内容皆来自网上
环境:ubuntu19.04、python3.x
python包:requests、bs4、beautifulsoup、re、urllib、lxml、os
下载方式:$pip install [包名]
ps:部分电脑未安装python-pip,报错后按照系统提示下载python-pip
爬虫过程:
1)模拟浏览器向目标网页发送请求
2)接收响应
3)解析,将响应转为网页代码输出
4)查找代码中需要的部分
5)处理
代码实现:
这里以爬取发表情(https://www.fabiaoqing.com/biaoqing)网页上的图片为例
1、2) url = 'https://www.fabiaoqing.com/biaoqing' #目标网址
response = requests.get(url) #发送访问请求接收
3) soup= BeautifulSoup(response.content.decode('utf-8'), 'lxml') #解析响应,此时soup是目标网页代码
4) gowl = str(soup.findAll('img')) #查找所有图片,gowl即为图片url
#由于我们仅需要其中的表情,所以需要对gowl再进行一次筛选。目标网页表情包url
我们可以发现url分为.jpg和.gif,但它们前面都是http://w...sinaimg.cn/bmiddle/................................ #此处 . 表示匹配一个数字或字符。所以:
picUrls = re.findall('http://w...sinaimg.cn/bmiddle/.................................jpg',gowl)
picUrlst = re.findall('http://w...sinaimg.cn/bmiddle/.................................gif',gowl)
#picUrls和picUrlst的和即为目标表情包
5)然后下载图片
imgName = 0
for url in picUrls:
r = requests.get(url)
img = r.content
with open(str(imgName)+".jpg",'wb') as f:
f.write(img)
imgName = imgName +1
imgNamet = len(picUrls)
for urls in picUrlst:
rt = requests.get(urls)
imgt = rt.content
with open(str(imgNamet)+".gif",'wb') as f:
f.write(imgt)
imgNamet = imgNamet +1
最后
完整代码:
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import requests
from bs4 import BeautifulSoup
import re
import urllib
import lxml
import os
url = "https://www.fabiaoqing.com/biaoqing"
response = requests.get(url) #发送请求
soup = BeautifulSoup(response.content.decode('utf-8'), 'lxml') #解析
gowl = str(soup.findAll('img')) #查找
#print(gowl) #所有img
picUrls = re.findall('http://w...sinaimg.cn/bmiddle/.................................jpg',gowl)
picUrlst = re.findall('http://w...sinaimg.cn/bmiddle/.................................gif',gowl)
#print picUrls,picUrlst #所有符合要求的图片
#file_obj = open('goel', 'r+') #写入文件,goels是你创建的文档名称
#file_obj.write(str(picUrls))
imgName = 0
for url in picUrls:
r = requests.get(url)
img = r.content
with open(str(imgName)+".jpg",'wb') as f:
f.write(img)
imgName = imgName +1
imgNamet = len(picUrls)
for urls in picUrlst:
rt = requests.get(urls)
imgt = rt.content
with open(str(imgNamet)+".gif",'wb') as f:
f.write(imgt)
imgNamet = imgNamet +1
ps:这是我的第一次写爬虫,希望对此时阅读的你们有所帮助。如果文章或代码有所错误欢迎指出。也欢迎各位大神对代码进行简化。
爬虫python代码-python爬虫(附源码)相关推荐
- cvtcolor python opencv_13行代码实现:Python实时视频采集(附源码)
程序逻辑 Python实时视频采集程序主要流程共分为10个步骤,具体如下图所示: 流程描述: 库文件导入:导入程序依赖的python安装包: 摄像头管理对象创建和初始化:是对opencv VideoC ...
- 用Html5实现天气预报的原理,HTML5 Canvas和jQuery实时天气预报代码解析「附源码」...
HTML5 Canvas和jQuery实时天气预报代码解析「附源码」 这是一款非常有意思的纯CSS3扁平风格天气预报卡片动画特效.该天气预报特效将各种天气制作为卡片形式,包括下雨,闪电,白天,夜间和下 ...
- 13行代码实现:Python实时视频采集(附源码)
一.前言 本文是<人脸识别完整项目实战>系列博文第3部分:程序设计篇(Python版),第1节<Python实时视频采集程序设计>,本章内容系统介绍:基于Python+open ...
- 【Python】一文弄懂python装饰器(附源码例子)
目录 前言 一.什么是装饰器 二.为什么要用装饰器 三.简单的装饰器 四.装饰器的语法糖@ 五.装饰器传参 六.带参数的装饰器 七.类装饰器 八.带参数的类装饰器 九.装饰器的顺序 总结 写在后面 前 ...
- Python实现物流管理系统(附源码)
前言 基于Django实现的物流管理系统,工作时忙里偷闲写的练手项目. 特点 前端基于Bootstrap 4框架和AdminLTE框架. 使用MySQL作为数据库后端. 实现了运单录入.发车出库.到货 ...
- 100个Python实战项目(附源码),练完即可就业,从入门到进阶
前言: "读"代码是不能给你带来任何收益的,正如"读书"一样,如果在读的时候你不琢磨,保管你读完仨月准忘了一大半.真正需要的是去"试"代码, ...
- python编程选股_随笔吧量化投资选股的python程序实践(附源码)
量化投资选股的python程序实践(附源码) 首先选取沪深股票市场,本人比较关注的12只股票: 000002 万科A,600566 济川药业,300051 三五互联,002039 黔源电力,60087 ...
- Python爬虫项目70例,附源码 70个Python爬虫练手实例
今天博主给大家带来了一份大礼,Python爬虫70例!!!以及完整的项目源码!!! 本文下面所有的爬虫项目都有详细的配套教程以及源码,都已经打包好上传到百度云了,链接在文章结尾处! 扫码此处领取大家自 ...
- 自己帮别人写的网站可以公开源码吗_专注爬虫:20个精心总结爬虫项目,爬虫技术这里强(附源码)...
写在前面 你想成为Python爬虫的高手么?你想爬取你想要的高质量数据么? 那么你得需要进行爬虫项目的演练,那样你才有可能在Python爬虫的道路上走的更远 小编在这里精心总结了20个爬虫项目的演练, ...
- 齿轮画板Python小游戏(附源码)
齿轮画板Python小游戏 相信很多人都玩过类似下面这样的小玩具,我叫它齿轮画板,很多人叫它万花尺.前段时间我的孩子在玩这种游戏时由于控制不好,总是很难画好完整的图案.于是我萌发了用编程来实现这个游戏 ...
最新文章
- ubuntu系统php环境变量设置,Ubuntu系统环境变量详解
- Pygame Rect区域位置(图解)
- 机器学习重新构想计算的构建块
- 一个完整项目的学习--
- appium的demo编程
- pytorch randomresizedcrop
- 【科普】为什么ip地址通常以192.168开头?
- 道指mt4代码_剑指offer算法题052:正则表达式匹配
- oracle查询语句子句,Oracle 查询执行顺序
- Spring Boot 永远滴神!10分钟快速入门
- python的编程工具spider_7款Python开发神器,拿走不谢
- zabbix应用之discovery批量添加主机并实现自定义主机名
- hbase MapReduce程序样例入门
- 单片机:Keil的安装教程
- ssm医院挂号就诊预约系统毕业设计源码250853
- 两数之和c++实现 java实现 two sum
- C++程序设计:税费计算
- WPF图片背景色过滤
- Python基础+进阶(万字总结,基础案例+执行结果)
- 2022淘宝天猫京东双十一交易额有多少?双11交易的数据
热门文章
- java报错只有一个数字4,Java 报错 illegal Key Size
- Android Handler与Looper原理简析
- HTTP协议之post multipart/form-data数据类型实例
- Fuzzy C Means 算法及其 Python 实现——写得很清楚,见原文
- 格伦布编码——rice编码无非是golomb编码M为2^x的特例
- go语言笔记——数组长度不可变,但是元素值是可变的!!!
- ES doc_values介绍2——本质是field value的列存储,做聚合分析用,ES默认开启,会占用存储空间...
- SpringBoot jetty webflux
- blfs(systemv版本)学习笔记-使用apache创建简单的网页服务器
- Linux中OBS在Wayland环境下黑屏只显示鼠标的应对措施