requests模块介绍

requests模块,python中原生的一款基于网络请求的模块
作用:模拟浏览器发请求
如何使用(requests模块的编码流程):

  • 指定url
  • 发起请求(post请求Ajax,get请求静态)
  • 获取响应数据
  • 持久化存储
    环境安装:
    pip install requests
#需求:爬取搜狗首页的页面数据
import requests
#step 1: 指定url
url = 'https://www.sogou.com/'
#step 2: 发起请求
#get方法会返回一个响应对象
response = requests.get(url=url)
#step 3: 获取响应数据, text返回的是字符串形式的响应数据
page_text = response.text
#step 4: 持久化存储
with open('./sogou.html','w',encoding='utf-8') as fp:fp.write(page_text)
print('爬取数据结束!')
爬取数据结束!

简易网页采集器

#UA:User-Agent (请求载体的身份标识)
"""
UA检测:门户网站的服务器会检测对应请求的载体身份标识,如果监测到请求
的载体身份表示为某一款浏览器的,则说明该请求是一个正常的请求,但是,
如果检测到请求的载体身份标识不是基于某一款浏览器的,则表示为不正常的请求(爬虫),
则服务端就很有可能拒绝该次请求。
"""
#UA伪装:让爬虫对应的请求载体身份标识伪装成某一款浏览器import requests
#UA伪装:将对应的User-Agent封装到一个字典中。
#user-agent获取:页面--检查--network--下面列表栏,随便点击一行--在Headers下找到user-agent
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.57'
}
#地址栏中主要信息为下面字符串,至query=‘搜索关键词’
url = 'https://www.sogou.com/web'#缺少参数,为动态
#处理url携带的参数,封装到字典中
kw = input('enter a word:')
param = {'query':kw
}
#对指定的url发起的请求对应的url是携带参数的,并且请求过程中处理了参数
response = requests.get(url=url,params=param,headers=headers)page_text = response.text
fileName = kw+'.html'
with open(fileName,'w',encoding='utf-8') as fp:fp.write(page_text)
print(fileName,'保存成功!')

破解百度翻译

#post请求(携带了参数)
#响应数据是一组json数据
import requests
import json
#1.指定url
post_url = 'https://fanyi.baidu.com/sug'
#2.进行UA伪装
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.57'
}
#3.post请求参数处理(同get请求)
word = input('enter a word:')
data = {'kw':word
}
#4.请求发送
response = requests.post(url=post_url,data=data,headers=headers)
#5.获取响应数据,json返回的object对象(如果确认响应数据是json类型,才能使用json)
dic_obj = response.json()
#进行持久存储
fileName = word+'.json'
fp = open(fileName,'w',encoding='utf-8')
json.dump(dic_obj,fp=fp,ensure_ascii=False)print('over!')
enter a word:dog
over!

豆瓣电影爬取

import requests
import json
url = 'https://movie.douban.com/j/chart/top_list'
param = {'type': '24','interval_id': '100:90','action': '','start': '0', #从库中的第几部电影去取'limit': '20', #一次取出的个数
}
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.57'
}
response = requests.get(url=url,params=param,headers=headers)list_data = response.json()fp = open('./douban.json','w',encoding='utf-8')
json.dump(list_data,fp=fp,ensure_ascii=False)print('over!')
over!
import requests
import jsonurl = 'http://www.kfc.com.cn/kfccda/storelist/index.aspx'
param = {'cname': '', 'pid':'','keyword': '上海','pageIndex': '1','pageSize': '10'
}headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.60'
}response = requests.post(url=url,params=param,headers=headers)page_text = response.textwith open('./KFC.html','w',encoding='utf-8') as fp:fp.write(page_text)
print('保存成功!')
保存成功!

中国国药监局信息爬取 - 综合

import requests
import jsonurl = 'http://scxk.nmpa.gov.cn:81/xk/itownet/portalAction.do?method=getXkzsList'
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.60'
}
id_list = [] #存储企业的ID
all_data_list = [] #存储所有的企业详情数据for page in range(1,6):page = str(page)data_param = {'on': 'true','page': page,'pageSize': '15','productName':'','conditionType': '1','applyname':'','applysn': ''}#发起post请求,通过json()获取数据json_ids = requests.post(url=url,params=data_param,headers=headers).json()for dic in json_ids['list']:id_list.append(dic['ID'])#获取企业详情数据
post_url = 'http://scxk.nmpa.gov.cn:81/xk/itownet/portalAction.do?method=getXkzsById'for ids in id_list:data ={'id':ids}detail_json = requests.post(url=post_url,params=data,headers=headers).json()#print(detail_json,'------------------ending--------------------')all_data_list.append(detail_json)
#持久化存储
fp = open('./allData.json','w',encoding='utf-8')
json.dump(all_data_list,fp=fp,ensure_ascii=False)
print('over!!!')
over!!!

数据解析

1.数据解析分类

  • 正则
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hkCNS7Di-1620357559715)(attachment:image.png)]
  • bs4
  • xpath

2.数据解析原理

  • 解析的局部的文本都会在标签之间或者标签对应的属性中进行存储
  • 1.进行指定标签的定位
  • 2.标签或者标签对应的属性中存储的数据值进行提取(解析)

3.编码流程:

  • 指定url
  • 发起请求
  • 获取响应数据
  • 数据解析
  • 持久化存储

正则练习

import re
#提取出python
key = 'javapythonc++php'
re.findall('python',key)[0]
'python'
#提取出hello world
key = '<html><h1>hello world<h1></html>'
re.findall('<h1>(.*)<h1>',key)[0] #返回的是一个list,通过索引取值
['hello world']
#提取170
string = '我喜欢身高为170的女孩'
re.findall('\d+',string)[0]
'170'
#提取http://和https://
key = 'http://www.baidu.com and https://boob.com'
re.findall('https?://',key)
['http://', 'https://']
#提取出hello
key = 'lalala<hTml>hello</HtMl>hahah' #输出<hTml>hello</HtMl>
re.findall('<[Hh][Tt][mM][lL]>(.*)</[Hh][Tt][mM][lL]>',key)
['hello']
#提取出hit
key = 'bobo@hit.edu.com' #想要匹配到hit
re.findall('h.*?\.',key)
['hit.']
#匹配sas和saas
key = 'saas and sas and saaas'
re.findall('sa{1,2}s',key)
['saas', 'sas']

爬取糗事百科图片数据

import requests
import re
import os#创建一个文件夹,保存所有的图片
if not os.path.exists('./qiutuLibs'):os.mkdir('./qiutuLibs')url = 'https://www.qiushibaike.com/imgrank/'
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.60'
}
#使用通用爬虫对url对应的一整张页面进行爬取
page_text = requests.get(url=url,headers=headers).text#使用聚焦爬虫将页面中所有的糗图进行解析/提取
'''
<div class="thumb"><a href="/article/123882263" target="_blank">
<img src="//pic.qiushibaike.com/system/pictures/12388/123882263/medium/EUH7IH4S44N72TJ1.jpg" alt="糗事#123882263" class="illustration" width="100%" height="auto">
</a>
</div>
'''ex = '<div class="thumb">.*?<img src="(.*?)" alt.*?</div>'
img_src_list = re.findall(ex,page_text,re.S)
#print(img_src_list)
for src in img_src_list:#拼接出一个完整的图片urlsrc = 'https:'+ src#请求到了图片的二进制数据img_data = requests.get(url=src,headers=headers).content#生成图片名称img_name = src.split('/')[-1]imgPath = './qiutuLibs/'+img_namewith open(imgPath,'wb') as fp:fp.write(img_data)print(img_name,'下载成功!!!')
0CIWR7J5QG1LIP1I.jpg 下载成功!!!
LVJDCC1I6K3WCMPA.jpg 下载成功!!!
FODTGB522T9QHQJH.jpg 下载成功!!!
R2XAQNFBTCZ5UN1S.jpg 下载成功!!!
UBE9TT5SCQCY1TJM.jpg 下载成功!!!
I1Z5QPCDOT7JVGOR.jpg 下载成功!!!
ZP4CD0YH3G4MSN8M.jpg 下载成功!!!
4YPI9WVN8KX5XFB8.jpg 下载成功!!!
0SZ3RP5TLEV6W1UG.jpg 下载成功!!!
DZATEQ1GUSOOPVG5.jpg 下载成功!!!
B58K1OOXBQFB9DBK.jpg 下载成功!!!
KK8K7GPUY970HL11.jpg 下载成功!!!
E06AZH9V0HF5TUW3.jpg 下载成功!!!
RPTSQ859V3Z3FY92.jpg 下载成功!!!
QPB4WMUAAFJ29TU2.jpg 下载成功!!!
1R2OB7XPAMTDITVH.jpg 下载成功!!!
54TGBZDHT322N138.jpg 下载成功!!!
R4K7EI3HYO07ELIO.jpg 下载成功!!!
6VUPVPSC1M0KWPSA.jpg 下载成功!!!
6I1H1K4EAMDA6ULX.jpg 下载成功!!!
GZ7G0V1JYBYQOK1M.jpg 下载成功!!!
346X2W7J2KGSFZW9.jpg 下载成功!!!
R9683IO4XNOB5CNA.jpg 下载成功!!!
FO42RZITN3RQBE4S.jpg 下载成功!!!
XAVSZEL9MWXW39WW.jpg 下载成功!!!

分页爬取

import requests
import re
import os#创建一个文件夹,保存所有的图片
if not os.path.exists('./qiutuLibs'):os.mkdir('./qiutuLibs')headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.60'
}
#设置一个通过的url模板
url = 'https://www.qiushibaike.com/imgrank/page/%d/'
#pageNum = 1
for pageNum in range(1,3):#对应页码的urlnew_url = format(url%pageNum)#使用通用爬虫对url对应的一整张页面进行爬取page_text = requests.get(url=new_url,headers=headers).text#使用聚焦爬虫将页面中所有的糗图进行解析/提取ex = '<div class="thumb">.*?<img src="(.*?)" alt.*?</div>'img_src_list = re.findall(ex,page_text,re.S) #print(img_src_list)for src in img_src_list:#拼接出一个完整的图片urlsrc = 'https:'+ src#请求到了图片的二进制数据img_data = requests.get(url=src,headers=headers).content#生成图片名称img_name = src.split('/')[-1]imgPath = './qiutuLibs/'+img_namewith open(imgPath,'wb') as fp:fp.write(img_data)print(img_name,'下载成功!!!')
TRXVUU1YOCGTQVPI.jpg 下载成功!!!
GU8L03DHTXFAU3WZ.jpg 下载成功!!!
MPR92LCXGV4YNVDF.jpg 下载成功!!!
EAFCY9LKGWZ7OG6K.jpg 下载成功!!!
PONPTKUYW8UP8YIM.jpg 下载成功!!!
CYJ560E37IWUGB8K.jpg 下载成功!!!
LKONZKR7DOMBOCKO.jpg 下载成功!!!
Z5HJGYPP3RWSM58U.jpg 下载成功!!!
PR1GUSIPVXAI19TU.jpg 下载成功!!!
VJ4AHNB7G0LM3TNR.jpg 下载成功!!!
L08K6OAN9NO8PNZ2.jpg 下载成功!!!
13YAL5UW47VAX274.jpg 下载成功!!!
YJCECU2WWE2O5IG6.jpg 下载成功!!!
G1BW5JB3RN05XKMK.jpg 下载成功!!!
PUA2RFJ82UFA3UX8.jpg 下载成功!!!
1I19LEUZ6OUT7ZBY.jpg 下载成功!!!
1UJ3INPT72MIRY4T.jpg 下载成功!!!
5R4ZUZ5FS6IJIOD3.jpg 下载成功!!!
WK1I6SMG7GL3C60I.jpg 下载成功!!!
HKHE2A8GTT6L0K5H.jpg 下载成功!!!
HJDIYZMK1E8FYSKK.jpg 下载成功!!!
GZ7G0V1JYBYQOK1M.jpg 下载成功!!!
8FMOVY59ANGC0AUC.jpg 下载成功!!!
QY9TOLQUMEYK0SR6.jpg 下载成功!!!
W7INYK55ZBH7TIJO.jpg 下载成功!!!
RDPB6OWOFEYAHAOT.jpg 下载成功!!!
SODI7BPKWYZ00NDN.jpg 下载成功!!!
I7XLLX8COL7JU2LZ.jpg 下载成功!!!
WXDNWM04DP1KX9SJ.jpg 下载成功!!!
3L8OSD5YXAOMZHH7.jpg 下载成功!!!
IRMI6SQE3Z1D8CLA.jpg 下载成功!!!
5AHLIQVTGQ30KKEL.jpg 下载成功!!!
2FI84VEB0J9IKWW2.jpg 下载成功!!!
1IT13HBP5WVKPJ71.jpg 下载成功!!!
X9DWTI7BXAJH894U.jpg 下载成功!!!
HBNY8PTJQH3KT7AR.jpg 下载成功!!!
7FW29Y2M85IT6A4U.jpg 下载成功!!!
54C8NFL75G5HAOYI.jpg 下载成功!!!
3D6VATDBR1SEFCZR.jpg 下载成功!!!
EIIANYHSQDIVV5KT.jpg 下载成功!!!
ETBKZ10QOFV8W11V.jpg 下载成功!!!
C6S6MJXR8PTK4R3Z.jpg 下载成功!!!
E4YDLXLYYLGPIJDH.jpg 下载成功!!!
HI3FZOJB5SMJHBMN.jpg 下载成功!!!
5VJJV5RY6G8YH3KO.jpg 下载成功!!!
CLR9X88P8223UU3V.jpg 下载成功!!!
HNTBHIP2917CQV8W.jpg 下载成功!!!
VPUH3DGBZDUN2J4P.jpg 下载成功!!!
1122O43BRISY1VC8.jpg 下载成功!!!
PZAO98TB6P26LGVZ.jpg 下载成功!!!

2.使用bs4进行数据解析

  • bs4数据解析原理

    • 1.实例化一个BeautifulSoup对象,并且将页面源码数据加载到该对象中
    • 2.通过调用BeautifulSoup对象中相关属性或方法对标签定位和数据提取
  • 环境安装
    • pip install bs4
    • pip install lxml
  • 如何实例化BeautifulSoup对象
    • from bs4 import BeautifulSoup
    • 对象的实例化:
      • 1.将本地的html文档中的数据加载到该对象中

      • 2.将互联网上获取的页面源码加载到该对象中
        page_text = response.text
        soup = BeautifulSoup(page_text,‘lxml’)

    • 提供的用于数据解析的方法和属性
      • soup.tagName 返回的是html中第一次出现的tagName对应的标签(只有一个)
      • soup.find(‘tagName’):
        • 等同于print(soup.tagName)
        • 属性定位:
          • soup.find(‘div’,class_/id/attr=‘song’)
      • soup.find_all(‘tagName’) 返回符合要求的所有标签(列表)
      • select:
        • soup.select(‘某选择器’(id,class,标签…选择器))
        • 层级选择器:
          • soup.select(’’.tang > ul > li a’) >表示的是一个层级,空格表示的是多个层级
      • 获取标签之间的文本数据:
        • soup.a.text /string /get_text()
        • text /get_text():可以获得某一个标签中的所有文本内容
        • string:只可以获取该标签下面直系文本内容
      • 获取标签中的属性值:
        -soup.tagName[‘属性名称’] #soup.a[‘href’]

爬取三国演义小说所有的章节标题和章节内容

# coding:utf-8
from bs4 import BeautifulSoup
#将本地的html文档中的数据加载到该对象中
import requestsheaders = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.60'
}
url = 'https://www.shicimingju.com/book/sanguoyanyi.html'
page_text = requests.get(url=url,headers=headers).text#在首页中解析出章节标签和详情页的url
#1.实例化BeautifulSoup对象,需要将页面源码数据加载到该对象中
soup = BeautifulSoup(page_text,'lxml')
#解析章节标题和详情页的url
li_list = soup.select('.book-mulu > ul > li')
fp = open('./sanguo.txt','w',encoding='utf-8')for li in li_list:title = li.a.stringdetail_url = 'https://www.shicimingju.com/' + li.a['href']#对详情页发起请求,解析出章节内容response = requests.get(url=detail_url,headers=headers)detail_page = response.encoding='utf-8' # 此处转化为utf-8,否则请求之后可能无文本对象detail_page_text = detail_page.text#解析出详情页中相关的章节内容detail_soup = BeautifulSoup(detail_page_text,'lxml')div_tag = detail_soup.find('div',class_='chapter_content')#解析到了章节的内容content = div_tag.textfp.write(title+':'+content+'\n')print(title,'爬取成功!!!')

xpath

最常用且最便捷高效的一种解析方式,通用性

  • xpath解析原理:

    • 1.实例化一个etree的对象,且需要将被解析的页面源码数据加载到该对象中。
    • 2.条用etree对象中的xpath方法结合着xpath表达式实现标签的定位和内容的捕获。
  • 环境的安装:
    • pip install lxml(解析器)
  • 如何实例化一个etree对象: from lxml import etree
    • 1.将本地的html文档中的源码数据加载到etree对象中
      etree.parse(filePath)
    • 2.可以将从互联网上获取的源码数据加载到该对象中
      etree.HTML(‘page_text’)
    • xpath(‘xpaht表达式’)
      1./: 表示的是从跟节点开始定位。表示的是一个层级。
      tree.xpath(’/html/body/div’)
      2.//: 表示的是多个层级。可以表示从任意位置开始定位。
      tree.xpath(’/html//div)
      tree.xpath(’//div’)
      3.属性定位:tag[@attrName='attrValue]
      //div[@class=‘song’]
      4.索引定位:tree.xpath(//div[@class=‘song’]/p[3]) 索引是从1开始的。
      5.取文本
      ① /text() 获取标签中直系的文本内容
      ② //text() 获取标签中非直系的文本内容
      6.取属性
      /@attrName
import requests
from lxml import etree
#需求:爬取58二手房中的房源信息#爬取到源码数据
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.66'
}
url = 'https://sh.58.com/ershoufang/'
page_text = requests.get(url=url,headers=headers).text#数据解析
#1.实例化一个
tree = etree.HTML(page_text)
#储存li标签对象
li_list = tree.xpath('//ul[@class="house-list-wrap"]/li')
fp = open('58.txt','w',encoding='utf-8')
for li in li_list:#局部解析title = li.xpath('./div[2]/h2/a/text()')[0] #点.不要忘记price = li.xpath('./div[3]/p[2]/text()')[0]print(title,price)fp.write(title+' '+price+'\n')
此房本人代理,找我可拿底价,内环内板式南北通两房  91211元/㎡
因家庭原因房东忍痛割爱,急售此房,性价比高,低于  63914元/㎡
欣连佳苑大面积84.5平4楼仅需320万即可拥有  37852元/㎡
385万 世博家园八街坊 满五 电梯房 朝南 居  50367元/㎡
满五  无个税 全明户型三房朝南 产权清晰交易安  83002元/㎡
幸福我家,秀景苑,精装两房,边套户型,商品房,满  34879元/㎡
(月底必卖房源)满五    高区景观房 精装修可  87707元/㎡
对口交小秒杀房,单价6万6学籍没用满五年看房方便  67907元/㎡
主卧朝南,电梯房,环境优美,,居家装  47406元/㎡
六星真盘 1室1厅1卫 54.0平米 560.0  103704元/㎡
青浦一手精装电梯新房丨大虹桥商务辐射丨3室2厅低  40237元/㎡
九亭G60科创云廊!精装交付!12号线西延伸段!  33293元/㎡
中福花苑 高区江景房 近110平米 南北通透 采  90932元/㎡
六星真盘,假一赔贰佰元,临平路 213.0平米   79813元/㎡
松江新城,亏本20万!精装小户型!低总价!给您一  15349元/㎡
四村精装两房,干净清爽,可拎包入住,繁华地段出行  39345元/㎡
房东降价急售,送车位,户型方正,可拎包入住,产权  13084元/㎡
人民广场 对口曹光彪格致  朝南 158平 居家  117089元/㎡
(惊讶)!外地人都在看此房,可买无需社保!70年  13192元/㎡
新天地 2室2厅2卫 148.0平米 1580.  106757元/㎡
惊!!证大三期 品质好房 教育名额未用 价格可谈  75126元/㎡
电梯房 合生城邦(四街坊公寓住宅) 430万 南  43330元/㎡
淞宝 2室2厅2卫 112.0平米 530.00  47322元/㎡
新出一期花园位置 带车库赠送大露台 带院子业主置  54599元/㎡委托 开发商预留   接受置换 高区带车位   40879元/㎡
六星真盘假一赔贰佰 楼层好 小区物业好 看房提前  65218元/㎡
华宝  三房,中间位置,满五年  ,业主诚意出售  65556元/㎡
魔都名都!莘庄地铁口精装四房两厅两卫小区中心位置  58824元/㎡
新南家园 看到我这就不用往下滑了我的房源品质是高  30000元/㎡
校南新村 精装修 南北通透 61万 电梯房 采光  13405元/㎡
莘庄地铁口精装大两房南北通透,一梯两户 房型正气  47458元/㎡
六星真盘,假一赔贰佰元3室2厅1卫 142平米   83099元/㎡
T丨豪装30万丨家具家电全送丨楼层好丨采光足丨靠  31350元/㎡
地铁口高顿品质小区,业主急售,置换随时看  66654元/㎡
新凯一期,临河景观房,房东急置换,看房随时,签约  33278元/㎡
电梯顶楼复式 送个大露台 税费各付 位置好  41576元/㎡
南北通透 2室1厅 满二  住房 92平 电梯房  27718元/㎡
宝通家园精装123平米总价206万看房随时业主诚  16969元/㎡
2室2厅 电梯房 精装修108平938万上海花城  86357元/㎡
虹桥别墅西郊庄园独栋别墅送超大花园1500平,临  90444元/㎡
嗨找房子吗选择这套就对了点击进来满五  诚心出售  39251元/㎡
一手无税!12号线延伸门口近莘庄一手精装电梯洋房  32435元/㎡
只求卖掉!!莘松中学新上全南户型两房 房改售房无  53279元/㎡
五号线地铁口 龙湖天街旁 自带商业和游泳会所  32223元/㎡
一层一户大豪宅欢迎咨询  155705元/㎡
北外滩这个预算还能碰到这么好的房子吗精装35万全  60858元/㎡
南北通三房纯毛坯 15号线地铁口,07年次新房   41248元/㎡
新上架!一手动迁地铁旁新小区配套齐全价格可谈。  48557元/㎡
临近BRT 龙湖天街旁 总价低你的  房子 快来  23610元/㎡
五号线地铁延伸段 大学城覆盖 对口重点学校  21909元/㎡
(安家在上海)外地人可买可落户,月租金5000,  10000元/㎡
万达商业圈 龙湖天街旁 出门BRT直达地铁8号线  27714元/㎡
学 区未用,精装修,诚意出售  63137元/㎡
朝南 1房1厅1卫 53.84平米  53121元/㎡
只做真盘实价,新客站必看好房,俯瞰苏州河,豪装全  58019元/㎡
看苏州河景,朝南稀有一房带外阳台,就读中远实验,  90786元/㎡
忍痛降价378万出售,房东只求卖掉,家具家电全送  33702元/㎡
临港金汇片区,三年社保可买,门口龙湖天街,BRT  24059元/㎡
173万 电梯房 1室1厅 朝南 居家自住 保养  35473元/㎡
南北通透,法式小高层,繁华地段,房型正气,中式风  80328元/㎡
接轨上海1公里!上海9号线17号线地铁俩站点!送  9077元/㎡
婚房装修!精装带车位!地铁口650米!外地人可买  9488元/㎡
上海崇明岛!来电直降15万总价!送15万豪华装修  9177元/㎡
自带物美商场!恒大开发!12万精装修俩房!50万  7507元/㎡
年底回馈,不限购不限贷,    即可购买,精装修  11124元/㎡
一梯两户精装洋房,送20万产权车位,送15万装修  9000元/㎡
拒绝虚假!外地人可买!地铁口學区房!不限购不限贷  16167元/㎡
首付50万购房~9号线地铁~精装复式公寓~通燃气  25715元/㎡
首付10万 长三角地标 三倍迪士尼 融创百亿打造  10603元/㎡
捡漏房源!急降20万上海安家不是梦!包租地铁口每  10556元/㎡
(低于市场价30万)送150平大花园  在建轻轨  8182元/㎡
精装复式满五   小区中心位置 旁边就是长清公园  43104元/㎡
33平 朝南 150万 满五  住房 精装修 2  44643元/㎡
高铁旁边!外地人可买!可以落户!对口学區!送20  6180元/㎡
上缝小区 近312号线龙漕路地铁站 满五   精  63974元/㎡
11号线三林站地铁口旁!全明南北两房,带地下车位  57561元/㎡
(捡漏)首付5万安家上海!房东置换直降!外地人客  10910元/㎡
外地人可买!首付9万!精装修拎包入住!可落户读书  10393元/㎡
196万 美罗家园宝欣苑二村 南北通透 简单装修  28378元/㎡
11号线复式精装修电梯房71万急售  15958元/㎡
界龙新世纪公寓,一楼带大花园,小区中间位置,随时  36852元/㎡
房东哭过一次,一降再降,80平只要120万,来电  20782元/㎡
能接受目前市场价的客户可以看看 因为我只做  源  51450元/㎡
元旦特惠 首付8万 送车位 对口浙师大附属 可落  13576元/㎡
(降价只卖3天)降价30万现总价60万买60平!  24865元/㎡
5号线地铁,70年产权住宅,外地户籍小孩可以落户  12200元/㎡
地铁11号500米兆丰路站,首付5万起,外地人可  8960元/㎡
市中心 不限购可落户 低总价可贷款 交通便捷环境  5560元/㎡110平精装修现在只要60万 来电  8725元/㎡
捡漏外地人可买!花桥地铁口200米,首付15万!  8555元/㎡
!乐高旁!地铁旁!首付15万有产证!  自住皆可  10385元/㎡
地铁9号线 枫泾古镇旁景区房 万达广场 乐高园旁  15482元/㎡
急急急!急降20万!业主置换着急首付款!上海安家  27905元/㎡
杜绝虚假!房东亲自挂牌!净赚两房送豪华装修!月租  50000元/㎡
健身楼层 南北通透,采光好 交通便利  42392元/㎡
满五  住房 518万 3室2厅 124平 房东  45327元/㎡
北大街280弄!经典三房,底楼送天井,满五年少税  30785元/㎡
婚装家电家具全,稀有户型,南北通透,近地铁,小区  48276元/㎡
电梯房 科大桂语江南 3室2厅 精装修 56万   7204元/㎡
黎安三村,12号地铁旁,交通便利,配套成熟,  41785元/㎡
精装修,南北通透,440万,3室2厅,采光好,周  32778元/㎡
开发商特价房,首付 低十万起,三大产业园环绕,未  9077元/㎡
(捡漏)经典小户,安家在上海外地人可买,可落户读  24762元/㎡
门口就是卫生院,大门口位置,南北直通,得房率超高  40006元/㎡
地鉄口300米,对口百年名校的学區房,房东急售,  7207元/㎡
贵的都是  格丨很高兴能与您在钓鱼网站相遇丨 好  32955元/㎡
金丰苑818弄2室1厅1卫 77平米 216万临  28052元/㎡
小上海新城 新出大三房 带花园 位置好采光好 周  41792元/㎡
地铁口(豪装租金4800)面积够大,装修够好,可  10950元/㎡
(捡漏)金山新城板块,地铁22号线,外地人可买,  11667元/㎡
御上海青橙|地铁0|精装公寓|不限购|可贷款|业  23455元/㎡
虹桥1号,精装修,355万,93平,南北通透,房  37908元/㎡
市中心八佰伴旁 精装修  两房 70年产权可落户  7185元/㎡
纯地铁口 首付5万 送精装 外地人可买 急售!!  14977元/㎡
留步!留步!急售好房,精装修家电全送,有车位可落  8781元/㎡
(!地铁  站!外地人!)可落户上学!精装修送家  11025元/㎡
使用面积120平,  户型送阁楼,可做三房二厅2  41656元/㎡
捡漏房!无需社保!11号线地铁500米!家电家具  5618元/㎡
安家在上海,外地人可买,   ,月租金5000,  9100元/㎡
世博新出精装一房一厅,近地铁,小区中心位置,设施  48838元/㎡
#需求:解析下载图片数据
import requests
from lxml import etree
import osheaders = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.66'
}
url = 'http://pic.netbian.com/4kdongman/'
response = requests.get(url=url,headers=headers)
#手动设定响应数据的编码格式
#response.encoding = 'utf-8'
page_text = response.text#数据解析:src属性值 alt属性值
tree = etree.HTML(page_text)
li_list = tree.xpath('//div[@class="slist"]/ul/li')#创建一个文件夹
if not os.path.exists('./picLibs'):os.mkdir('./picLibs')for li in li_list:img_src = 'http://pic.netbian.com/'+li.xpath('./a/img/@src')[0]img_name = li.xpath('./a/img/@alt')[0]+'.jpg'#通用处理中文乱码的解决方案img_name = img_name.encode('iso-8859-1').decode('gbk')print(img_name,img_src)#请求图片持久化存储img_data = requests.get(url=img_src,headers=headers).contentimg_path = 'picLibs/'+img_namewith open(img_path,'wb') as fp:fp.write(img_data)print(img_name,'下载成功!')
坐在地板的女孩 唯美长裙子 露背 厚涂画风4k高清动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/201228/234048-16091700480342.jpg
坐在地板的女孩 唯美长裙子 露背 厚涂画风4k高清动漫壁纸.jpg 下载成功!
短发美女 吊带背心 外套 帅气 纹身4k高清壁纸3840x2160.jpg http://pic.netbian.com//uploads/allimg/201228/214304-16091629844780.jpg
短发美女 吊带背心 外套 帅气 纹身4k高清壁纸3840x2160.jpg 下载成功!
长发少女黑色吊带裙 好看的4k动漫美女壁纸3840x2160.jpg http://pic.netbian.com//uploads/allimg/200618/005100-1592412660f973.jpg
长发少女黑色吊带裙 好看的4k动漫美女壁纸3840x2160.jpg 下载成功!
下午 趴在桌子的女孩4k动漫壁纸3840x2160.jpg http://pic.netbian.com//uploads/allimg/190824/212516-1566653116f355.jpg
下午 趴在桌子的女孩4k动漫壁纸3840x2160.jpg 下载成功!
dva 宅女 长筒袜 短发 可爱女孩4k壁纸.jpg http://pic.netbian.com//uploads/allimg/200410/213246-1586525566e909.jpg
dva 宅女 长筒袜 短发 可爱女孩4k壁纸.jpg 下载成功!
少女 樱花 屋子 4k动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/201228/225333-1609167213f6af.jpg
少女 樱花 屋子 4k动漫壁纸.jpg 下载成功!
lol英雄联盟 美女 塞拉菲娜 奶茶 v字手势 拍照 花丛 4k壁纸.jpg http://pic.netbian.com//uploads/allimg/201222/001824-1608567504ca94.jpg
lol英雄联盟 美女 塞拉菲娜 奶茶 v字手势 拍照 花丛 4k壁纸.jpg 下载成功!
江南烧酒4k动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/180803/084010-15332568109b5b.jpg
江南烧酒4k动漫壁纸.jpg 下载成功!
女生 白色衬衫 耳机 房间 书桌 4k动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/190917/183634-15687165942ef2.jpg
女生 白色衬衫 耳机 房间 书桌 4k动漫壁纸.jpg 下载成功!
美女TIFA蒂法4k高清壁纸3840x2160.jpg http://pic.netbian.com//uploads/allimg/201112/000443-16051106836aa6.jpg
美女TIFA蒂法4k高清壁纸3840x2160.jpg 下载成功!
晚上 湖水 女孩 竹排 渔船 鸟 灯 好看二次元动漫4k壁纸3840x2160.jpg http://pic.netbian.com//uploads/allimg/201207/181626-160733618619ea.jpg
晚上 湖水 女孩 竹排 渔船 鸟 灯 好看二次元动漫4k壁纸3840x2160.jpg 下载成功!
漂亮女孩子 美少女 白裤袜 房间 5k动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/190909/193047-15680286478a48.jpg
漂亮女孩子 美少女 白裤袜 房间 5k动漫壁纸.jpg 下载成功!
女孩子 芭蕾舞 粉色裙子 4k动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/201215/195916-16080335566ec8.jpg
女孩子 芭蕾舞 粉色裙子 4k动漫壁纸.jpg 下载成功!
动漫美女 白色衬衫 迷你短裙 黑丝袜 黑裤袜 美脚美腿 4k高清壁纸.jpg http://pic.netbian.com//uploads/allimg/201207/233833-1607355513cbea.jpg
动漫美女 白色衬衫 迷你短裙 黑丝袜 黑裤袜 美脚美腿 4k高清壁纸.jpg 下载成功!
女孩子 旅行 车窗 火车 列车 听音乐 高清4k动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/200405/171302-1586077982d6cd.jpg
女孩子 旅行 车窗 火车 列车 听音乐 高清4k动漫壁纸.jpg 下载成功!
三体智子高清4k动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/190824/205524-15666513248366.jpg
三体智子高清4k动漫壁纸.jpg 下载成功!
穿白色衬衫的可爱女孩 床上看书 美腿 二次元4K动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/201104/230930-16045025701c9b.jpg
穿白色衬衫的可爱女孩 床上看书 美腿 二次元4K动漫壁纸.jpg 下载成功!
漂亮美少女 女孩子 手机 白裤袜 美脚美腿 好看二次元4k动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/200714/224033-15947376338459.jpg
漂亮美少女 女孩子 手机 白裤袜 美脚美腿 好看二次元4k动漫壁纸.jpg 下载成功!
女子 白色军装制服 黑色丝袜 海边 4k动漫壁纸.jpg http://pic.netbian.com//uploads/allimg/200216/174956-158184659610a4.jpg
女子 白色军装制服 黑色丝袜 海边 4k动漫壁纸.jpg 下载成功!
lol英雄联盟 九尾妖狐 Dream 阿狸 厚涂画风4k高清壁纸.jpg http://pic.netbian.com//uploads/allimg/201201/233339-1606836819ad92.jpg
lol英雄联盟 九尾妖狐 Dream 阿狸 厚涂画风4k高清壁纸.jpg 下载成功!
import requests
from lxml import etreeheaders = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.66'
}
url = 'https://www.aqistudy.cn/historydata/'
page_text = requests.get(url=url,headers=headers).text#数据解析
tree = etree.HTML(page_text)
#打开网页开发者工具
hot_li_list = tree.xpath('//div[@class="bottom"]/ul/li')
all_city_names = []
#解析到热门城市的名称
for li in hot_li_list:hot_city_name = li.xpath('./a/text()')[0]all_city_names.append(hot_city_name)#解析到全部城市的名称
city_names_list = tree.xpath('//div[@class="bottom"]/ul/div[2]/li')
for li in city_names_list:city_name = li.xpath('./a/text()')[0]all_city_names.append(city_name)print(all_city_names,len(all_city_names))
['北京', '上海', '广州', '深圳', '杭州', '天津', '成都', '南京', '西安', '武汉', '阿坝州', '安康', '阿克苏地区', '阿里地区', '阿拉善盟', '阿勒泰地区', '安庆', '安顺', '鞍山', '克孜勒苏州', '安阳', '蚌埠', '白城', '保定', '北海', '宝鸡', '北京', '毕节', '博州', '白山', '百色', '保山', '白沙', '包头', '保亭', '本溪', '巴彦淖尔', '白银', '巴中', '滨州', '亳州', '长春', '昌都', '常德', '成都', '承德', '赤峰', '昌吉州', '五家渠', '昌江', '澄迈', '重庆', '长沙', '常熟', '楚雄州', '朝阳', '沧州', '长治', '常州', '潮州', '郴州', '池州', '崇左', '滁州', '定安', '丹东', '东方', '东莞', '德宏州', '大理州', '大连', '大庆', '大同', '定西', '大兴安岭地区', '德阳', '东营', '黔南州', '达州', '德州', '儋州', '鄂尔多斯', '恩施州', '鄂州', '防城港', '佛山', '抚顺', '阜新', '阜阳', '富阳', '抚州', '福州', '广安', '贵港', '桂林', '果洛州', '甘南州', '固原', '广元', '贵阳', '甘孜州', '赣州', '广州', '淮安', '海北州', '鹤壁', '淮北', '河池', '海东地区', '邯郸', '哈尔滨', '合肥', '鹤岗', '黄冈', '黑河', '红河州', '怀化', '呼和浩特', '海口', '呼伦贝尔', '葫芦岛', '哈密地区', '海门', '海南州', '淮南', '黄南州', '衡水', '黄山', '黄石', '和田地区', '海西州', '河源', '衡阳', '汉中', '杭州', '菏泽', '贺州', '湖州', '惠州', '吉安', '金昌', '晋城', '景德镇', '金华', '西双版纳州', '九江', '吉林', '即墨', '江门', '荆门', '佳木斯', '济南', '济宁', '胶南', '酒泉', '句容', '湘西州', '金坛', '鸡西', '嘉兴', '江阴', '揭阳', '济源', '嘉峪关', '胶州', '焦作', '锦州', '晋中', '荆州', '库尔勒', '开封', '黔东南州', '克拉玛依', '昆明', '喀什地区', '昆山', '临安', '六安', '来宾', '聊城', '临沧', '娄底', '乐东', '廊坊', '临汾', '临高', '漯河', '丽江', '吕梁', '陇南', '六盘水', '拉萨', '乐山', '丽水', '凉山州', '陵水', '莱芜', '莱西', '临夏州', '溧阳', '辽阳', '辽源', '临沂', '龙岩', '洛阳', '连云港', '莱州', '兰州', '林芝', '柳州', '泸州', '马鞍山', '牡丹江', '茂名', '眉山', '绵阳', '梅州', '宁波', '南昌', '南充', '宁德', '内江', '南京', '怒江州', '南宁', '南平', '那曲地区', '南通', '南阳', '平度', '平顶山', '普洱', '盘锦', '蓬莱', '平凉', '莆田', '萍乡', '濮阳', '攀枝花', '青岛', '琼海', '秦皇岛', '曲靖', '齐齐哈尔', '七台河', '黔西南州', '清远', '庆阳', '钦州', '衢州', '泉州', '琼中', '荣成', '日喀则', '乳山', '日照', '韶关', '寿光', '上海', '绥化', '石河子', '石家庄', '商洛', '三明', '三门峡', '山南', '遂宁', '四平', '商丘', '宿迁', '上饶', '汕头', '汕尾', '绍兴', '三亚', '邵阳', '沈阳', '十堰', '松原', '双鸭山', '深圳', '朔州', '宿州', '随州', '苏州', '石嘴山', '泰安', '塔城地区', '太仓', '铜川', '屯昌', '通化', '天津', '铁岭', '通辽', '铜陵', '吐鲁番地区', '铜仁地区', '唐山', '天水', '太原', '台州', '泰州', '文昌', '文登', '潍坊', '瓦房店', '威海', '乌海', '芜湖', '武汉', '吴江', '乌兰察布', '乌鲁木齐', '渭南', '万宁', '文山州', '武威', '无锡', '温州', '吴忠', '梧州', '五指山', '西安', '兴安盟', '许昌', '宣城', '襄阳', '孝感', '迪庆州', '锡林郭勒盟', '厦门', '西宁', '咸宁', '湘潭', '邢台', '新乡', '咸阳', '新余', '信阳', '忻州', '徐州', '雅安', '延安', '延边州', '宜宾', '盐城', '宜昌', '宜春', '银川', '运城', '伊春', '云浮', '阳江', '营口', '榆林', '玉林', '伊犁哈萨克州', '阳泉', '玉树州', '烟台', '鹰潭', '义乌', '宜兴', '玉溪', '益阳', '岳阳', '扬州', '永州', '淄博', '自贡', '珠海', '湛江', '镇江', '诸暨', '张家港', '张家界', '张家口', '周口', '驻马店', '章丘', '肇庆', '中山', '舟山', '昭通', '中卫', '张掖', '招远', '资阳', '遵义', '枣庄', '漳州', '郑州', '株洲'] 394
import requests
from lxml import etreeheaders = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.66'
}
url = 'https://www.aqistudy.cn/historydata/'
page_text = requests.get(url=url,headers=headers).text#数据解析
tree = etree.HTML(page_text)
#打开网页开发者工具
#解析到热门城市和所有城市对应的a标签
#热门城市://div[@class="bottom"]/ul/li/a
#所有城市://div[@class="bottom"]/ul/div[2]/li/a
a_list = tree.xpath('//div[@class="bottom"]/ul/li/a | //div[@class="bottom"]/ul/div[2]/li/a')
all_city_names = []
for a in a_list:city_name = a.xpath('./text()')[0]all_city_names.append(city_name)print(all_city_names,len(all_city_names))
['北京', '上海', '广州', '深圳', '杭州', '天津', '成都', '南京', '西安', '武汉', '阿坝州', '安康', '阿克苏地区', '阿里地区', '阿拉善盟', '阿勒泰地区', '安庆', '安顺', '鞍山', '克孜勒苏州', '安阳', '蚌埠', '白城', '保定', '北海', '宝鸡', '北京', '毕节', '博州', '白山', '百色', '保山', '白沙', '包头', '保亭', '本溪', '巴彦淖尔', '白银', '巴中', '滨州', '亳州', '长春', '昌都', '常德', '成都', '承德', '赤峰', '昌吉州', '五家渠', '昌江', '澄迈', '重庆', '长沙', '常熟', '楚雄州', '朝阳', '沧州', '长治', '常州', '潮州', '郴州', '池州', '崇左', '滁州', '定安', '丹东', '东方', '东莞', '德宏州', '大理州', '大连', '大庆', '大同', '定西', '大兴安岭地区', '德阳', '东营', '黔南州', '达州', '德州', '儋州', '鄂尔多斯', '恩施州', '鄂州', '防城港', '佛山', '抚顺', '阜新', '阜阳', '富阳', '抚州', '福州', '广安', '贵港', '桂林', '果洛州', '甘南州', '固原', '广元', '贵阳', '甘孜州', '赣州', '广州', '淮安', '海北州', '鹤壁', '淮北', '河池', '海东地区', '邯郸', '哈尔滨', '合肥', '鹤岗', '黄冈', '黑河', '红河州', '怀化', '呼和浩特', '海口', '呼伦贝尔', '葫芦岛', '哈密地区', '海门', '海南州', '淮南', '黄南州', '衡水', '黄山', '黄石', '和田地区', '海西州', '河源', '衡阳', '汉中', '杭州', '菏泽', '贺州', '湖州', '惠州', '吉安', '金昌', '晋城', '景德镇', '金华', '西双版纳州', '九江', '吉林', '即墨', '江门', '荆门', '佳木斯', '济南', '济宁', '胶南', '酒泉', '句容', '湘西州', '金坛', '鸡西', '嘉兴', '江阴', '揭阳', '济源', '嘉峪关', '胶州', '焦作', '锦州', '晋中', '荆州', '库尔勒', '开封', '黔东南州', '克拉玛依', '昆明', '喀什地区', '昆山', '临安', '六安', '来宾', '聊城', '临沧', '娄底', '乐东', '廊坊', '临汾', '临高', '漯河', '丽江', '吕梁', '陇南', '六盘水', '拉萨', '乐山', '丽水', '凉山州', '陵水', '莱芜', '莱西', '临夏州', '溧阳', '辽阳', '辽源', '临沂', '龙岩', '洛阳', '连云港', '莱州', '兰州', '林芝', '柳州', '泸州', '马鞍山', '牡丹江', '茂名', '眉山', '绵阳', '梅州', '宁波', '南昌', '南充', '宁德', '内江', '南京', '怒江州', '南宁', '南平', '那曲地区', '南通', '南阳', '平度', '平顶山', '普洱', '盘锦', '蓬莱', '平凉', '莆田', '萍乡', '濮阳', '攀枝花', '青岛', '琼海', '秦皇岛', '曲靖', '齐齐哈尔', '七台河', '黔西南州', '清远', '庆阳', '钦州', '衢州', '泉州', '琼中', '荣成', '日喀则', '乳山', '日照', '韶关', '寿光', '上海', '绥化', '石河子', '石家庄', '商洛', '三明', '三门峡', '山南', '遂宁', '四平', '商丘', '宿迁', '上饶', '汕头', '汕尾', '绍兴', '三亚', '邵阳', '沈阳', '十堰', '松原', '双鸭山', '深圳', '朔州', '宿州', '随州', '苏州', '石嘴山', '泰安', '塔城地区', '太仓', '铜川', '屯昌', '通化', '天津', '铁岭', '通辽', '铜陵', '吐鲁番地区', '铜仁地区', '唐山', '天水', '太原', '台州', '泰州', '文昌', '文登', '潍坊', '瓦房店', '威海', '乌海', '芜湖', '武汉', '吴江', '乌兰察布', '乌鲁木齐', '渭南', '万宁', '文山州', '武威', '无锡', '温州', '吴忠', '梧州', '五指山', '西安', '兴安盟', '许昌', '宣城', '襄阳', '孝感', '迪庆州', '锡林郭勒盟', '厦门', '西宁', '咸宁', '湘潭', '邢台', '新乡', '咸阳', '新余', '信阳', '忻州', '徐州', '雅安', '延安', '延边州', '宜宾', '盐城', '宜昌', '宜春', '银川', '运城', '伊春', '云浮', '阳江', '营口', '榆林', '玉林', '伊犁哈萨克州', '阳泉', '玉树州', '烟台', '鹰潭', '义乌', '宜兴', '玉溪', '益阳', '岳阳', '扬州', '永州', '淄博', '自贡', '珠海', '湛江', '镇江', '诸暨', '张家港', '张家界', '张家口', '周口', '驻马店', '章丘', '肇庆', '中山', '舟山', '昭通', '中卫', '张掖', '招远', '资阳', '遵义', '枣庄', '漳州', '郑州', '株洲'] 394

作业 - 爬取站长素材免费简历模板

#导入模块
import requests
from lxml import etree
import os#url和UA伪装
url = 'https://sc.chinaz.com/jianli/free.html'
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.66'
}#创建一个文件夹
if not os.path.exists('./cvLibs'):os.mkdir('./cvLibs')response = requests.get(url=url,headers=headers)
response.encoding='utf-8' #有中文,转码
page_text = response.text#数据解析
tree = etree.HTML(page_text)
a_list = tree.xpath('//*[@id="container"]/div[1]/a')
for a in a_list:href_url = 'http:'+a.xpath('./@href')[0]response = requests.get(url=href_url,headers=headers)response.encoding='utf-8'detail_page = response.textdetail_tree = etree.HTML(detail_page)cv_url = detail_tree.xpath('//*[@id="down"]/div[2]/ul/li[1]/a/@href')[0]cv_name = detail_tree.xpath('//div[@class="ppt_left fl"]/div/div/h1/text()')[0] + '.rar'#请求下载cv_rar = requests.get(url=cv_url,headers=headers).contentcv_path = 'cvLibs/'+cv_namewith open(cv_path,'wb') as fp:fp.write(cv_rar)print(cv_name,'下载成功!')
编辑求职简历自我介绍表格.rar 下载成功!

第四章 验证码

Python爬虫学习笔记相关推荐

  1. python爬虫学习笔记 3.9 (了解参考:训练Tesseract)

    python爬虫学习笔记 3.9 (了解参考:训练Tesseract) 参考阅读:训练Tesseract 要使用 Tesseract 的功能,比如后面的示例中训练程序识别字母,要先在系统中设置一 个新 ...

  2. Python爬虫学习笔记 -- 爬取糗事百科

    Python爬虫学习笔记 -- 爬取糗事百科 代码存放地址: https://github.com/xyls2011/python/tree/master/qiushibaike 爬取网址:https ...

  3. python爬虫学习笔记3.2-urllib和request练习

    python爬虫学习笔记3.2-urllib和request练习 一.urllib练习 1.百度贴吧案例 需求 分析 手动测试查询流程 观察页面 分析特殊部分 https://tieba.baidu. ...

  4. python爬虫学习笔记 1.9 (Handler处理器 和 自定义Opener)

    python爬虫学习笔记 1.1(通用爬虫和聚焦爬虫) python爬虫学习笔记 1.2 ( HTTP和HTTPS ) python爬虫学习笔记 1.3 str和bytes的区别 python爬虫学习 ...

  5. python爬虫学习笔记2模拟登录与数据库

    前言 为了加入学校里面一个技术小组,我接受了写一个爬取学校网站通知公告的任务.这个任务比以前写的爬虫更难的地方在于,需要模拟登录才能获得页面,以及将得到的数据存入数据库. 本文按照日期来记录我完成任务 ...

  6. Python爬虫学习笔记总结(一)

    〇. python 基础 先放上python 3 的官方文档:https://docs.python.org/3/ (看文档是个好习惯) 关于python 3 基础语法方面的东西,网上有很多,大家可以 ...

  7. 一入爬虫深似海,总结python爬虫学习笔记!

    正文 〇. python 基础 先放上python 3 的官方文档:https://docs.python.org/3/ (看文档是个好习惯) 关于python 3 基础语法方面的东西,网上有很多,大 ...

  8. 一入爬虫深似海,总结python爬虫学习笔记! 1

    正文 〇. python 基础 先放上python 3 的官方文档:https://docs.python.org/3/ (看文档是个好习惯) 关于python 3 基础语法方面的东西,网上有很多,大 ...

  9. Python爬虫学习笔记:概念、知识和简单应用

    Python爬虫:概念.知识和简单应用 什么是爬虫? 使用的开发工具 一个简单的爬虫实例 Web请求过程分析 HTTP协议 请求头中的重要内容 响应头中的重要内容 请求方式 requests 安装 G ...

  10. python爬虫学习笔记一:网络爬虫入门

    参考书目 <python网络爬虫从入门到实践>唐松 第一章 网络爬虫入门 1.1 robots协议 举例:查看京东的robots协议 京东robots协议地址 User-agent: * ...

最新文章

  1. 南昌大学计算机专业高数课本,南昌大学高等数学期末考试.pdf
  2. 跨域问题的前后端解决方案
  3. 8-10 牛客网刷题知识点集合
  4. 在 MFC SDI 程序中实现多语言程序界面
  5. C#(.Net)中调用Sql sever汉字字符串显示为?问号
  6. .NET Framework 4.0源代码
  7. gcp devops_将GCP AI平台笔记本用作可重现的数据科学环境
  8. pyqt——布局管理
  9. 再次了解深浅拷贝问题
  10. Android用表格布局做菜单栏,Android开发菜单布局之表格布局示例
  11. 阻塞io阻塞io_面试官:直接IO、缓存IO、阻塞与同步?
  12. c++ 判断数学表达式有效性_2009年高考数学上海卷难度如何?独特的题型设计,让你耳目一新...
  13. 关于 if __name__ == '__main__' 的理解
  14. JAVA基础----java中T,?的区别
  15. MATLAB利用小波分析提取周期
  16. 单位工作制度牌展示_员工工号牌管理制度
  17. 不能创建对象qmdispatch_关于系统弹出错误:429 , ActiveX 部件不能创建对象 的解决方法...
  18. Ubuntu18.04安装有道词典
  19. 0CTF/TCTF2019 Ghost Pepper Writeup
  20. Python图形处理

热门文章

  1. Python 七段数码管
  2. 数值计算 - Richardson外推法求一阶导数(C++实现)
  3. 小米5x android auto,小米 5s Plus重生——伪装Pixel XL
  4. 联通光猫桥接、路由拨号设置踩坑
  5. IC验证培训——AI时代:软件已经起飞,硬件还在路上?
  6. 给 Java 开发者的 10 个大数据工具和框架
  7. 树的双亲表示法(C语言实现)——树的存储结构
  8. 笑谈中国海军郑和号超级航母
  9. Book Sharing
  10. iqooneo3支持鸿蒙系统吗,iQOO Neo3搭载144Hz竞速屏:支持全局自适应刷新率