python-爬虫 xpath里如何定义包含一个或多个class属性

------------恢复内容开始------------

获取数据的方式:

企业生产的用户数据
数据管理咨询公司
政府/机构提供的公开数据
第三方数据平台购买数据
爬虫爬取数据

requests模块

resp.text返回的是Unicode型的数据。

resp.content返回的是bytes型也就是二进制的数据。

也就是说,如果你想取文本,可以通过r.text。

如果想取图片,文件,则可以通过r.content。

import requests
# 1.指定url
url = 'https://www.sogou.com/'   # 不带参数

# 2.发起一个get请求,get方法会返回 请求成功后的响应对象
response = requests.get(url=url)

# 3.获取响应中的数据值:text可以获取响应对象中的字符串形式的页面数据
page_data = response.text
#print(page_data)

# 持久化操作
with open('./sogou.html','w',encoding='utf-8')as f:
    f.write(page_data)
get请求
# 将参数封装到字典中
params = {'query':'周杰伦','ie':'utf8'}
# 自定义请求头信息
# 此处用的百度的UA
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'}
 
 
# 拿到响应对象
response = requests.get(url=url,params=params,headers=headers)

post请求
# 封装post请求的参数
data = {
'source':'movie',
'redir':'https://movie.douban.com/',
'form_email':'你的豆瓣邮箱',
'form_password':'你的登录密码',
'login':'登录',
}
response = requests.post(url=url,data=data,headers=headers)

发送cookies:需要登陆验证的网站需要带上cookies

 代理ip

import requests
# https://www.dogedoge.com/results?q=ip
url = 'https://www.dogedoge.com/results?'
params = {'q':'ip'}


headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'}
# 将代理ip封装到字典中
proxy = {
    'http':'117.88.176.110:3000'
}

# 更换网络ip,发起请求之前
response = requests.get( url=url,proxies=proxy,headers=headers,params=params)
with open('./daili2.html','w',encoding='utf-8')as f:
    f.write(response.text)

xpath里如何定义包含一个或多个class属性

------------恢复内容结束------------

猜你喜欢

转载自www.cnblogs.com/foremostxl/p/11829482.html