麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發(fā) > Python > 正文

三個(gè)python爬蟲項(xiàng)目實(shí)例代碼

2024-09-09 19:03:29
字體:
供稿:網(wǎng)友

這篇文章主要介紹了三個(gè)python爬蟲項(xiàng)目實(shí)例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

爬取內(nèi)涵段子:

#encoding=utf-8import urllib2import reclass neihanba():  def spider(self):    '''    爬蟲的主調(diào)度器    '''    isflow=True#判斷是否進(jìn)行下一頁    page=1    while isflow:      url="http://www.neihanpa.com/article/list_5_"+str(page)+".html"      html=self.load(url)      self.deal(html,page)      panduan=raw_input("是否繼續(xù)(y/n)!")      if panduan=="y":        isflow=True        page+=1      else:        isflow=False  def load(self,url):    '''    針對(duì)url地址進(jìn)行全部爬去    :param url: url地址    :return: 返回爬去的內(nèi)容    '''    header = {      "User-Agent": " Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36"    }    request = urllib2.Request(url, headers=header)    response = urllib2.urlopen(request)    html = response.read()    return html  def deal(self,html,page):    '''    對(duì)之前爬去的內(nèi)容進(jìn)行正則匹配,匹配出標(biāo)題和正文內(nèi)容    :param html:之前爬去的內(nèi)容    :param page: 正在爬去的頁碼    '''    parrten=re.compile('<li class="piclist/d+">(.*?)</li>',re.S)    titleList=parrten.findall(html)    for title in titleList:      parrten1=re.compile('<a href="/article//d+.html" rel="external nofollow" >(.*)</a>')      ti1=parrten1.findall(title)      parrten2=re.compile('<div class="f18 mb20">(.*?)</div>',re.S)      til2=parrten2.findall(title)      for t in ti1:        tr=t.replace("<b>","").replace("</b>","")        self.writeData(tr,page)      for t in til2:        tr=t.replace("<p>","").replace("</p>","").replace("<br>","").replace("<br />","").replace("&ldquo","/"").replace("&rdquo","/"")        self.writeData(tr,page)  def writeData(self,context,page):    '''    將最終爬去的內(nèi)容寫入文件中    :param context: 匹配好的內(nèi)容    :param page: 當(dāng)前爬去的頁碼數(shù)    '''    fileName = "di" + str(page) + "yehtml.txt"    with open(fileName, "a") as file:      file.writelines(context + "/n")if __name__ == '__main__':  n=neihanba()  n.spider()

爬取智聯(lián):

#encoding=utf-8import urllibimport urllib2import reclass zhiLian():  def spider(self,position,workPlace):    '''    爬蟲的主調(diào)度器    :param position: 職位    :param workPlace: 工作地點(diǎn)    '''    url="http://sou.zhaopin.com/jobs/searchresult.ashx?"    url+=urllib.urlencode({"jl":workPlace})    url+="&"    url+=urllib.urlencode({"kw":position})    isflow=True#是否進(jìn)行下一頁的爬去    page=1    while isflow:      url+="&"+str(page)      html=self.load(url)      self.deal1(html,page)      panduan = raw_input("是否繼續(xù)爬蟲下一頁(y/n)!")      if panduan == "y":        isflow = True        page += 1      else:        isflow = False  def load(self,url):    '''    針對(duì)url地址進(jìn)行全部爬去    :param url: url地址    :return: 返回爬去的內(nèi)容    '''    header = {      "User-Agent": " Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36"    }    request = urllib2.Request(url, headers=header)    response = urllib2.urlopen(request)    html = response.read()    return html  def deal1(self,html,page):    '''    對(duì)之前爬去的內(nèi)容進(jìn)行正則匹配,匹配職位所對(duì)應(yīng)的鏈接    :param html:之前爬去的內(nèi)容    :param page: 正在爬去的頁碼    '''    parrten=re.compile('<a/s+/s+par="ssidkey=y&ss=/d+&ff=/d+&sg=/w+&so=/d+"/s+href="(.*?)" rel="external nofollow" target="_blank">.*?</a>',re.S)    til=parrten.findall(html)#爬去鏈接    for t in til:      self.deal2(t,page)  def deal2(self,t,page):    '''    進(jìn)行二次爬蟲,然后在新的頁面中對(duì)公司、薪資、工作經(jīng)驗(yàn)進(jìn)行匹配    :param t: url地址    :param page: 當(dāng)前匹配的頁數(shù)    '''    html=self.load(t)#返回二次爬蟲的內(nèi)容    parrten1=re.compile('<a/s+onclick=".*?"/s+href=".*?" rel="external nofollow" /s+target="_blank">(.*?)/s+.*?<img/s+class=".*?"/s+src=".*?"/s+border="/d+"/s+vinfo=".*?"></a>',re.S)    parrten2=re.compile('<li><span>職位月薪:</span><strong>(.*?) <a.*?>.*?</a></strong></li>',re.S)    parrent3=re.compile('<li><span>工作經(jīng)驗(yàn):</span><strong>(.*?)</strong></li>',re.S)    til1=parrten1.findall(html)    til2=parrten2.findall(html)    til3=parrent3.findall(html)    str=""    for t in til1:      t=t.replace('<img title="專屬頁面" src="http://img03.zhaopin.cn/2012/img/jobs/icon.png" border="0" />',"")      str+=t      str+="/t"    for t in til2:      str+=t      str += "/t"    for t in til3:      str+=t    self.writeData(str,page)  def writeData(self,context,page):    '''    將最終爬去的內(nèi)容寫入文件中    :param context: 匹配好的內(nèi)容     :param page: 當(dāng)前爬去的頁碼數(shù)    '''    fileName = "di" + str(page) + "yehtml.txt"    with open(fileName, "a") as file:      file.writelines(context + "/n")if __name__ == '__main__':  position=raw_input("請(qǐng)輸入職位:")  workPlace=raw_input("請(qǐng)輸入工作地點(diǎn):")  z=zhiLian()  z.spider(position,workPlace)
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 99精品视频在线免费观看 | 欧美日本一 | 中文字幕一区在线观看视频 | 色婷婷a v | 91性高湖久久久久久久久网站 | 欧美级毛片 | 成人一区二区三区四区 | 欧美日韩国产成人在线 | 久国产精品视频 | 天天干天天透 | 国产精品久久久久久久久久电影 | 久久综合久久精品 | 国产成人高清在线观看 | 欧美日韩在线看片 | 欧美日韩成人一区二区 | 久久福利剧场 | 高清视频91| 国产一级免费视频 | 姑娘第四集免费看视频 | 亚洲综合精品 | 性爱免费在线视频 | 成熟女人特级毛片www免费 | 国产成人综合在线观看 | 狠狠干夜夜草 | 99欧美视频 | 欧美五月婷婷 | 欧美日韩免费在线观看视频 | 欧美一级视频免费看 | 亚洲一区二区三区视频免费 | 欧美精品一区二区三区在线播放 | 久久精品视频免费 | 欧美a在线观看 | 国产成人高清成人av片在线看 | 久草干 | 曰韩黄色片 | 精品国产一级毛片 | 欧美成人精品欧美一级乱黄 | 国产成年人视频 | 免费黄色在线观看网站 | 国产自91精品一区二区 | 国产亚洲精品久久久久婷婷瑜伽 |