其实就是改了一下上一篇的URL和正则表达式。
import urllib.request
import re
import urllib.parse
#获取原码
def get_content(page):
url ='https://search.51job.com/list/010000,000000,0000,00,9,99,%25E6%2595%25B0%25E6%258D%25AE%25E5%2588%2586%25E6%259E%2590,2,'+str(page)+'.html?lang=c&postchannel=0000&workyear=99&cotype=99°reefrom=99&jobterm=99&companysize=99&ord_field=0&dibiaoid=0&line=&welfare='
a = urllib.request.urlopen(url)
html = a.read().decode('gbk')
return html
def get(html):
reg = re.compile(r'class="t1 ">.*? <a target="_blank" title="(.*?)" href="(.*?)".*? <span class="t2"><a target="_blank" title="(.*?)".*?<span class="t3">(.*?)</span>.*?<span class="t4">(.*?)</span>.*? <span class="t5">(.*?)</span>',re.S)
items = re.findall(reg,html)
items_length = len(items)
return items,items_length
#爬取信息
items_all=[]
items_length_all=0
#30是页数
for i in range(0,30):
items,items_length = get(get_content(i))
items_all+=items
items_length_all=items_length+items_length_all
print(i)
import pandas as pd
items_all=pd.DataFrame(items_all).drop_duplicates()
items_all.columns=["职位","URL","公司","地址","money","time"]
#写入
items_all.to_excel("D:/DA.xls")
今天给看官老爷们附上结果图嘻嘻。
滚去看小闲书惹,喵~