一、京东商品页面爬取
import requests
url = "https://item.jd.com/2967929.html"
try:
r= requests.get(url)
r.raise_for_status()
r.encoding = r.apparent_encodin
print(r.text[:1000])
except:
print("爬取失败")
二、亚马逊商品爬取
检查返回状态码为503
检查编码 r.encoding 'ISO-8859-1'
改成可阅读编码r.encoding = r.apparent_encoding
查看requests头部信息 r.requests.header
更改头部信息:
kv = {'user-agent':'Mozilla/5.0'}
url = "https://www.amazon.cn/gp/product/B01M8L5Z3Y"
r = requests.get(url,header = kv)
r.status_code 200
全部代码:
import requests
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("爬取失败")
三、百度360搜索关键字提交
搜索引擎关键词提交接口
百度的关键词接口:http://www.baidu.com/s?wd=keyword
360的关键词接口:http://www.so.com/s?q=keyword
百度搜索全代码
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("爬取失败")
四、网络图片的爬取和存储
网络图片连接的格式:
http://www.example.com/picture.jpg
全代码:
import requests
import os
url = ""
root="" #保持文件的目录
path = root +url.split('/')[-1]
try:
if not os.path.exists(root):
os.mkdir(root)
if not os.path.exists(path):
r = requests.get(url)
with open(path,'web') as f:
f.write(r.content)
f.close()
print("文件保存成功")
else:
print("文件已经存在”)
except:
print("爬取失败")
五、IP地址归属地自动查询
ip138网站接口:
http://m.ip138.com/ip.asp?ip=ipaddress
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("爬取失败")