Python爬取亚马逊商品页面
仍然利用Requests库来实现
1 import requests
2 r=requests.get('https://www.amazon.cn/gp/product/B01M8L5Z3Y')
3 r.status_code
4 r.encoding=r.apparent_encoding
5 r.text
发现结果有错误
'<!--\n To discuss automated access to Amazon data please contact api-services-support@amazon.com.\n For information about migrating to our APIs refer to our Marketplace APIs at https://developer.amazonservices.com.cn/index.html/ref=rm_5_sv, or our Product Advertising API at https://associates.amazon.cn/gp/advertising/api/detail/main.html/ref=rm_5_ac for advertising use cases.\n-->\n<html>\n <head>\n <meta http-equiv="Content-Type" content="text/html;charset=utf-8">\n <title>亚马逊</title>\n <body style="text-align:center;">\n <br>\n <div style="width:600px;margin:0 auto;text-align:left;">\n <h2>意外错误</h2>\n </div>\n <br>\n <div style="width:500px;margin:0 auto;text-align:left;"><font color="red">抱歉,由于程序执行时,遇到意外错误,您刚刚操作没有执行成功,请稍后重试。或将此错误报告给我们的客服中心:<a href="mailto:service_bj@cs.amazon.cn">service_bj@cs.amazon.cn</a></font><br><br>推荐您<a href="javascript:history.back(1)">返回上一页</a>,确认您的操作无误后,再继续其他操作。<br>您可以通过亚马逊<a href="https://www.amazon.cn/help/ref=cs_503_link/" target="_blank" rel="noopener noreferrer">帮助中心</a>,获得更多的帮助。<br></div>\n </body>\n</html>'
于是我们查看head
r.request.headers
得到{'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate, br', 'Accept': '*/*', 'Connection': 'keep-alive'}
发现
'User-Agent': 'python-requests/2.26.0'
被检测为机器人故无法进行网页爬取所以我们对其进行更改
url='https://www.amazon.cn/gp/product/B01M8L5Z3Y'
try:
kv={'user-agent':'Mozilla/5.0'}
r=requests.get(url,headers=kv)
r.raise_for_status()
r.encoding=r.apparent_encoding
print(r.text[1000:2000])
except:
print('爬取失败')
-----------------------------------------------------------------
发现百度关键词搜索接口:
https://www.baidu.com/s?wd= #观察可得
import requests
kv={'wd':'python'}
try:
r=requests.get('https://www.baidu.com/',params=kv)
r.raise_for_status()
print(r.request.url)
print(len(r.text))
except:
print('爬取失败')
Python爬取亚马逊商品页面的更多相关文章
- 亚马逊商品页面的简单爬取 --Pyhon网络爬虫与信息获取
1.亚马逊商品页面链接地址(本次要爬取的页面url) https://www.amazon.cn/dp/B07BSLQ65P/ 2.代码部分 import requestsurl = "ht ...
- python requests库网页爬取小实例:亚马逊商品页面的爬取
由于直接通过requests.get()方法去爬取网页,它的头部信息的user-agent显示的是python-requests/2.21.0,所以亚马逊网站可能会拒绝访问.所以我们要更改访问的头部信 ...
- JAVA爬取亚马逊的商品信息
在程序里面输入你想爬取的商品名字,就可以返回这件商品在亚马逊搜索中都所有相关商品的信息,包括名字和价格. 解决了在爬取亚马逊时候,亚马逊可以识别出你的爬虫,并返回503,造成只能爬取几个页面的问题. ...
- 用scrapy爬取亚马逊网站项目
这次爬取亚马逊网站,用到了scrapy,代理池,和中间件: spiders里面: # -*- coding: utf-8 -*- import scrapy from scrapy.http.requ ...
- 如何使用代理IP进行数据抓取,PHP爬虫抓取亚马逊商品数据
什么是代理?什么情况下会用到代理IP? 代理服务器(Proxy Server),其功能就是代用户去取得网络信息,然后返回给用户.形象的说:它是网络信息的中转站.通过代理IP访问目标站,可以隐藏用户的真 ...
- Python爬取网址中多个页面的信息
通过上一篇博客了解到爬取数据的操作,但对于存在多个页面的网址来说,使用上一篇博客中的代码爬取下来的资料并不完整.接下来就是讲解该如何爬取之后的页面信息. 一.审查元素 鼠标移至页码处右键,选择检查元素 ...
- 毕设一:python 爬取苏宁的商品评论
毕设需要大量的商品评论,网上找的数据比较旧了,自己动手 代理池用的proxypool,github:https://github.com/jhao104/proxy_pool ua:fake_user ...
- 最新亚马逊 Coupons 功能设置教程完整攻略!
最新亚马逊 Coupons 功能设置教程完整攻略! http://m.cifnews.com/app/postsinfo/18479 亚马逊总是有新的创意,新的功能.最近讨论很火的,就是这个 Coup ...
- 亚马逊副总裁谈Marketplace平台的个性化服务
说到个性化,亚马逊无疑是挖掘与利用数据为消费者打造个性化网购体验的先驱之一.而现在,几乎所有的公司和网站都在利用更加个性化的推荐算法为用户提供更好的购物和浏览体验. 亚马逊近年来尤其重视将其个性化特性 ...
- 亚马逊与Twitter携手电子商务
亚马逊(Amazon)与Twitter开展了合作,允许用户以Twitter消息的形式将喜欢的商品发送到购物篮中.这些高科技企业正在想办法把社交媒体和电子商务融为一体. 这一功能旨在将Twitter转变 ...
随机推荐
- day04-Vue01
Vue01 1.Vue是什么? Vue(读音/vju:/,类似于view)是一个前端框架,依据构建用户界面 Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或者项目整合 支持和其他类库结合使 ...
- [LeetCode]226.翻转二叉树——递归遍历交换孩子
题目 翻转一棵二叉树. 4 / \ 2 7 / \ / \ 1 3 6 9 //转换为: 4 / \ 7 2 / \ / \ 9 6 3 1 代码 TreeNode* invertTree(Tre ...
- 使用Dapr和.NET 6.0进行微服务实战:Dapr简介
大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进. 本文是<使用Dapr和.NET 6.0进行微服务实战>的第2篇Dapr ...
- Java基础学习笔记-类的静态属性和静态方法--待继续补充
程序运行时的内存占用 代码区(code area) 存放代码 数据区(data area) 存放全局数据.静态数据 堆区(heap area) 存放动态申请的数据 栈区(stack area) 存放局 ...
- 移动端安卓开发学习记录--Android Studio使用adb链接夜神模拟器常用指令
1.下载安装模拟器,打开模拟器,本步骤不再赘述 2.打开模拟机器安装路径,在地址栏输入cmd,回车,就会打开命令行窗口 3.输入 nox_adb.exe connect 127.0.0.1:62001 ...
- Python3+Selenium3自动化测试-(九)
selenium的学习拖拉了很久,内容也是较基础的部分,实际应用时查询文档也是OK的,当然,整理出来会更有利于我们在实际使用时去应用. 所以这一篇把官方的API文档进行解读整理,在看完这些API,将能 ...
- java入门与进阶-P1.5+P1.6
输入 Scanner输入语句介绍 java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入. 下面是创建 Scanner 对象的基本语法: Sca ...
- 创建型模式 - 简单工厂模式StaticFactoryMethod
简单工厂模式的定义 创建型模式: 我们把被创建的对象称为产品,把创建产品的对象称为工厂.如果要创建的产品不多,只要一个工厂类就可以完成,这种模式叫简单工厂模式. 在简单 ...
- 【学习笔记】QT从入门到实战完整版(按钮和信号槽)(1)
介绍说明 学习 QT 的目的只是为了可以实现跨平台的具有GUI 的程序,以前用的 MFC,但是无法应用在嵌入式平台.后来在全志的 Tina 系统中有看到 QT ,因此特地去了解了QT,挺有意思的,UI ...
- Pulsar负载均衡原理及优化
前言 前段时间我们在升级 Pulsar 版本的时候发现升级后最后一个节点始终没有流量. 虽然对业务使用没有任何影响,但负载不均会导致资源的浪费. 和同事沟通后得知之前的升级也会出现这样的情况,最终还是 ...