如何爬取京东商品信息 - Python 笔记

来源:【Python网络爬虫与信息提取】.MOOC. 北京理工大学
地址:https://www.bilibili.com/video/av9784617/?p=15

通过 requests.get 请求页面信息,然后直接 r.text 查看即可,不涉及保存到本地。

这是在 IDLE 中的代码

如何爬取京东商品信息 - Python 笔记_第1张图片
image.png

在 Sublime 的全部代码如下:

import requests #导入 requests 模块
url = "https://item.jd.com/100000177760.html" #定义 url 链接
try: #python 的 try 语句
    r = requests.get(url) #请求网页
    r.raise_for_status() #好像是检查状态码是否是正确的(200)
    r.encoding = r.apparent_encoding #不太懂,好像是换语句的
    print(r.text[:1000]) #输出前 1000 字符?的数据
except: #如果不符合上面的条件
    print("爬取失败") #输出失败

我们运行一下:
打开终端,输入 cd,然后将文件所在目录拖入到 cd 后面,回车。 输入 python3 jd.py 回车,我们发现争取打印出了信息,说明代码正确。

但是亚马逊的网站是反爬虫的,这时候就需要给 user-agent 定义一个名称,让网站以为是人为的访问就可以了。代码具体如下

import requests
url = "https://www.amazon.cn/dp/B07PB5M8DS/ref"
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("爬取失败")

这样就可以成功获取了。

你可能感兴趣的:(如何爬取京东商品信息 - Python 笔记)