python网络爬虫与信息提取 学习笔记day2
Day2:
查看robots协议:
查看京东的robots协议

查看百度的robots协议,可以看到百度拒绝了搜狗的爬虫233

爬取京东商品页面相关信息:
import requests
url = "https://item.jd.hk/1974631870.html"
try:
r = requests.get(url)
r.raise_for_status()
r.encoding = r.apparent_encoding
print(r.text[:1000])
except:
print("产生异常")

爬取亚马逊商品页面相关信息:
由于亚马逊拒绝爬虫访问,所以需要更改header的值,将python伪装成浏览器访问
import requests
url = "https://www.amazon.cn/dp/B0186FESGW/ref=fs_kin"
try:
kv = { 'user-agent':'Mozilla/5.0'}
r = requests.get(url,headers = kv)
r.status_code
r.raise_for_status()
r.encoding = r.apparent_encoding
print(r.text[:1000])
except:
print("产生异常")

爬取百度关键词查询结果 : 本例关键词为python
import requests
keyword = "python"
try:
kv = {'wd':keyword}
r = requests.get("http://www.baidu.com/s",params=kv)
print(r.request.url)
r.raise_for_status()
print(len(r.text)) except:
print("爬取失败")

网络图片,视频等二进制文件的爬取和保存:
import requests
import os url = "http://image.nationalgeographic.com.cn/2017/0819/20170819021922613.jpg"
root = "f://pics//"
path = root + url.split('/')[-1]
try:
if not os.path.exists(root): #处理根目录是否存在问题
os.mkdir(root)
if not os.path.exists(path): #处理文件是否存在问题
kv = { 'user-agent':'Mozilla/5.0'}
r = requests.get(url,headers = kv) r.status_code
with open(path,'wb') as f:
f.write(r.content)#r.content为二进制形式
f.close()
print("文件保存成功")
else:
print("文件已存在")
except:
print("爬取失败")
Ip地址归属地的查询:
import requests
url = "http://m.ip138.com/ip.asp?ip="
try:
r=requests.get(url+'202.204.80.112')
r.raise_for_status()
r.encoding = r.apparent_encoding
print(r.text[-500:])
except:
print("爬取失败")

python网络爬虫与信息提取 学习笔记day2的更多相关文章
- python网络爬虫与信息提取 学习笔记day3
Day3: 只需两行代码解析html或xml信息 具体代码实现:day3_1 注意BeautifulSoup的B和S需要大写,因为python大小写敏感 import requests r ...
- python网络爬虫与信息提取 学习笔记day1
Day1: 安装python之后,为其配置requests第三方库,并爬取百度主页内容. 语句解释: r.status_code检测请求的状态码,如果状态码为200,则说明访问成功,否则,则说明访问失 ...
- python 网络爬虫与信息提取 学习笔记day4
正则表达式简介: 简洁表示一组字符串的特征或者模式,在文本处理中十分常用,主要应用于字符串匹配中 1. 通用的字符串表达框架 2. 简洁表达一组字符串的表达式 3. 针对字符串表达简洁和特征思想 ...
- 第3次作业-MOOC学习笔记:Python网络爬虫与信息提取
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 4.提供图片或网站显示的学习进 ...
- 第三次作业-MOOC学习笔记:Python网络爬虫与信息提取
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 第一周 Requests库的爬 ...
- 第三次作业-Python网络爬虫与信息提取
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 过程. 5.写一篇不少于100 ...
- Python网络爬虫与信息提取
1.Requests库入门 Requests安装 用管理员身份打开命令提示符: pip install requests 测试:打开IDLE: >>> import requests ...
- Python网络爬虫与信息提取笔记
直接复制粘贴笔记发现有问题 文档下载地址//download.csdn.net/download/hide_on_rush/12266493 掌握定向网络数据爬取和网页解析的基本能力常用的 Pytho ...
- 【学习笔记】PYTHON网络爬虫与信息提取(北理工 嵩天)
学习目的:掌握定向网络数据爬取和网页解析的基本能力the Website is the API- 1 python ide 文本ide:IDLE,Sublime Text集成ide:Pychar ...
随机推荐
- maven导入多模块项目
maven导入多模块项目 一.SVN上Maven多模块项目结构 使用eclipse导入SVN上的Maven多模块项目 Maven多模块项目所在SVN目录 二.eclipse通过SVN导入到工作空间 ...
- python全栈开发-Day4 列表
python全栈开发-Day4 列表 一.首先按照以下几个点展开列表的学习 #一:基本使用 1 用途 2 定义方式 3 常用操作+内置的方法 #二:该类型总结 1 存一个值or存多个值 只能存一个值 ...
- 设计模式——装饰器模式(C++实现)
#include <iostream> #include <string> using namespace std; class Component { public: ; } ...
- parted分区和挂载及非交互式操作
author : headsen chen date : 2017-11-17 09:45:36 个人原创,转载请注明作者,出处,否则依法追究法律责任 1,将磁盘上原有的分区删除掉: 进入:#pa ...
- 无法获得数据库 'model' 上的排他锁 解决方法
解决方法: 在查询分析器中运行如下代码即可: declare @sql varchar(100) while 1=1 begin select top 1 @sql = 'kill '+cast(sp ...
- 关于mongodb按照字段模糊查询方法
模糊查询:tname包含某个关键字测试' cd /opt/soft/mongodb/bin ./mongo --host 192.168.0.1 --port 17017 test db.test ...
- Jdk1.7+eclipse搭建Java开发环境
Jdk1.7+eclipse搭建Java开发环境 1. 下载jdk1.7 http://www.oracle.com/technetwork/java/javase/downloads/jdk7 ...
- Linux运维主流架构简单剖析
随着IT运维的不断发展,尤其的Linux的飞速发展,越来越多的企业开始使用Linux操作系统平台,例如CentOS.RedHat.Ubuntu.Fedora等等,成千上亿个网站涌现在当今互联网,互联网 ...
- 将 Shiro 作为应用的权限基础 五:SpringMVC+Apache Shiro+JPA(hibernate)整合配置
配置web.xml,applicationContext.xml, spring-mvc.xml,applicationContext-shiro.xml,而且都有详细的说明. Web.xml是web ...
- 中文分词 sphni与scws
1.安装sphnixcd /usr/local/srcwget http://sphinxsearch.com/files/sphinx-2.2.11-release.tar.gztar -zxvf ...