Python爬虫快速上手教程
1 这个是什么
整理Python中requests常用的API
2 代码
from bs4 import BeautifulSoup
import requests
import re
# 使用requests进行网络求解,用BeautifulSoup处理html网页
s_url = "https://www.baidu.com"
o_header = {
'Accept': 'image/webp,image/apng,image/*,*/*;q=0.8',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'en-US,en;q=0.8',
'Connection': 'keep-alive',
'Referer': 'https://www.baidu.com',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36'
}
n_timeout = 36 # 设置超时秒数
'''
处理资源文件, url返回一个图片、音频、视频
'''
s_local_url = "img.jpg"
resp_stream = requests.get(s_local_url, stream=True, headers=o_header, timeout=n_timeout) #进行图片下载
with open(s_local_url, 'wb', buffering = 1024) as fp:
fp.write(resp_stream.content)
fp.flush()
'''
处理html, url返回一个网页
'''
# 使用get命令得到请求
resp = requests.get(s_url, headers=o_header, timeout= n_timeout)
# 得到明显的编码
resp.encoding = resp.apparent_encoding
# 字符串html转为soup
soup__html = BeautifulSoup(resp, "lxml")
# 找到所有的id属性为abc的h
soup__h = soup__html.find("a", id="h")
print(soup__h.text)
# 找到所有的class属性为abc的<img>
soup__img_s = soup__html.find("img", class_="abc")
for soup__img in soup__img_s:
print(soup__img["src"], soup__img.text)
# 找到所有的abc属性为opq的a
soup__a = soup__html.find("a", attrs= {"abc" :"opq"})
print(soup__a.text)
# 找到所有的abc属性为opq 1, opq 2的a (正则找)
soup__a = soup__html.find("a", attrs= {"abc" :re.compile(r"opq(\s\w+)?")})
print(soup__a.text)
Python爬虫快速上手教程的更多相关文章
- 入门python:《Python编程快速上手让繁琐工作自动化》中英文PDF+代码
入门推荐学习<python编程快速上手>前6章是python的基础知识,通俗易懂地讲解基础,初学者容易犯错的地方,都会指出来.从第三章开始,每章都有一个实践项目,用来巩固前面所学的知识. ...
- 《Python编程快速上手 —让繁琐工作自动化》|百度网盘免费下载|Python自动化办公
Python编程快速上手—让繁琐工作自动化 提取码:u8vj 如今,人们面临的大多数任务都可以通过编写计算机软件来完成. Python 是一种解释型.面向对象.动态数据类型的高级程序设计语言.通过 P ...
- 《Python爬虫学习系列教程》学习笔记
http://cuiqingcai.com/1052.html 大家好哈,我呢最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多.学习过程中我把一些学习的笔记总结下来,还记录了一些自己 ...
- 新浪SAE快速上手教程
新浪SAE快速上手教程[1]如何免费开通新浪云 2014-07-18 > 新浪SAE快速上手教程[2]如何创建.删除应用 2014-07-24 > 新浪SAE快速上手教程[3]如何上传应 ...
- Airtest 快速上手教程
一.Airtest 简介: AirtestIDE 是一个跨平台的UI自动化测试编辑器,适用于游戏和App. 自动化脚本录制.一键回放.报告查看,轻而易举实现自动化测试流程 支持基于图像识别的 Airt ...
- Python编程快速上手-让繁琐工作自动化-第二章习题及其答案
Python编程快速上手-让繁琐工作自动化-第二章习题及其答案 1.布尔数据类型的两个值是什么?如何拼写? 答:True和False,使用大写的T和大写的F,其他字母是小写. 2.3个布尔操作符是什么 ...
- Python requests快速上手
Python requests快速上手 这里参考官方文档,在ide中写了一遍,加深一下印象,定义的函数只是为了方便区分不同的请求方式 #-*-coding:utf-8-*- # Time:2017/1 ...
- Python爬虫框架Scrapy教程(1)—入门
最近实验室的项目中有一个需求是这样的,需要爬取若干个(数目不小)网站发布的文章元数据(标题.时间.正文等).问题是这些网站都很老旧和小众,当然也不可能遵守 Microdata 这类标准.这时候所有网页 ...
- [转]《Python爬虫学习系列教程》
<Python爬虫学习系列教程>学习笔记 http://cuiqingcai.com/1052.html 大家好哈,我呢最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多. ...
随机推荐
- 初识 Python 作业及默写
1.简述变量量命名规范 2.name = input(“>>>”) name变量是什么数据类型? 3.if条件语句的基本结构? 4.用print打印出下面内容: 文能提笔安天下, 武 ...
- GoCN每日新闻(2019-10-10)
GoCN每日新闻(2019-10-10) GoCN每日新闻(2019-10-10) 1. Go语言源码阅读之bytes.Buffer http://www.pengrl.com/p/60618/ 2. ...
- (8)Go Map
Go语言中提供的映射关系容器为map,其内部使用散列表(hash)实现. Map map是一种无序的基于key-value的数据结构,Go语言中的map是引用类型,必须初始化才能使用. map定义 G ...
- ARC063F すぬけ君の塗り絵 2 / Snuke's Coloring 2
题面 一句话题面:给你一些点,求这些点之中夹的最大的矩形周长.(考虑边界) Solution 首先是一个结论,答案矩形一定经过\(x=\frac{w}{2}\)或经过\(y=\frac{h}{2}\) ...
- 安装OpenStack Queens版本的教程推荐
为了加深对OpenStack的理解,需要自己分模块安装一次,之前都是用devstack安装,傻瓜式安装虽然方便,但是也减少了我对OpenStack理解的深度. 本人参考如下文档安装成功过 http:/ ...
- SpringMVC(上)
一.SpringMVC简介 (1)springMVC概述 Spring MVC属于SpringFrameWork的后续产品,Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块. 使用 ...
- ip地址掩码和位数对应关系表、子网掩码、网络地址、主机地址-yellowcong
本文链接:https://blog.csdn.net/yelllowcong/article/details/76736594ip的地址掩码,刚开始感觉特别蒙蔽,网掩码都是每段8位二进制,共32位,子 ...
- http请求传参问题解决
1.接口参数:使用form-data形式传参如果值太多就会报错误. 2.接口参数:使用form-data形式传参如果值太多就会报错误.这样前端可以传json就可以避免这样问题
- java生成订单编号
随着项目用户数量的扩大,高并发随之而来.那么如何在当前系统生成唯一编号呢? 一台数据库可以用自增,集群呢?当然也有随之的解决方案,但是最好的还是在项目生成了唯一的编号再插入到数据库.而不是数据库插入了 ...
- 【curl】certificate is bad 问题解决
参考:https://blog.scottlowe.org/2018/08/20/troubleshooting-tls-certificates/ 我最近正在写一篇博客文章,内容涉及使用TLS证书进 ...