python爬虫实例手机_三个python爬虫项目实例代码介绍

#=utf-8

():

(self,,):

爬虫的主调度器

职位

:paramworkPlace:工作地点

url=http://sou.zhaopin.com/jobs/searchresult.ashx?

url+=urllib.urlencode({jl:workPlace})

url+=

url+=urllib.urlencode({kw:position})

isflow=True#是否进行下一页的爬去

page=1

whileisflow:

url+=+str(page)

html=self.load(url)

self.deal1(html,page)

panduan=raw_input(是否继续爬虫下一页(y/n)!)

ifpanduan==y:

isflow=True

page+=1

else:

isflow=False

defload(self,url):

针对url地址进行全部爬去

:paramurl:url地址

:return:返回爬去的内容

header={

User-Agent:Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/67.0.3396.79Safari/537.36

}

request=urllib2.Request(url,headers=header)

response=urllib2.urlopen(request)

html=response.read()

returnhtml

defdeal1(self,html,page):

对之前爬去的内容进行正则匹配,匹配职位所对应的链接

:paramhtml:之前爬去的内容

:parampage:正在爬去的页码

parrten=re.compile(a\s+style=font-weight:\s+bold\s+par=ssidkey=yss=\d+ff=\d+sg=\w+so=\d+\s+href=(.*?)rel=externalnofollowtarget=_blank.*?/a,re.S)

til=parrten.findall(html)#爬去链接

fortintil:

self.deal2(t,page)

defdeal2(self,t,page):

进行二次爬虫,然后在新的页面中对公司、薪资、工作经验进行匹配

:paramt:url地址

:parampage:当前匹配的页数

html=self.load(t)#返回二次爬虫的内容

parrten1=re.compile(a\s+οnclick=.*?\s+href=.*?rel=externalnofollow\s+target=_blank(.*?)\s+.*?img\s+class=.*?\s+src=.*?\s+border=\d+\s+vinfo=.*?/a,re.S)

parrten2=re.compile(lispan职位月薪:/spanstrong(.*?)a.*?.*?/a/strong/li,re.S)

parrent3=re.compile(lispan工作经验:/spanstrong(.*?)/strong/li,re.S)

til1=parrten1.findall(html)

til2=parrten2.findall(html)

til3=parrent3.findall(html)

str=

fortintil1:

t=t.replace(imgtitle=专属页面src=//img03.zhaopin.cn/2012/img/jobs/icon.pngborder=0/,)

str+=t

str+=\t

fortintil2:

str+=t

str+=\t

fortintil3:

str+=t

self.writeData(str,page)

defwriteData(self,context,page):

将最终爬去的内容写入文件中

:paramcontext:匹配好的内容

:parampage:当前爬去的页码数

fileName=di+str(page)+yehtml.txt

withopen(fileName,a)asfile:

file.writelines(context+

)

if__name__==__main__:

position=raw_input(请输入职位:)

workPlace=raw_input(请输入工作地点:)

z=zhiLian()

z.spider(position,workPlace)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python爬虫实例教程-代码,是一个指导如何使用Python编写爬虫的教程。下面我将用300字中文来回答这个问题。 这个教程的代码示例主要分为以下几个部分。 第一部分是爬虫的准备工作,包括安装Python和相关的第三方库,如requests、BeautifulSoup等。首先需要安装Python,并配置好相关环境变量。然后使用pip安装requests和BeautifulSoup库,这两个库是编写爬虫时常用的工具。 第二部分是使用requests库发送网络请求,获取网页的HTML源代码。首先需要导入requests库,然后使用get方法发送网络请求,传入要取的网页地址。之后可以通过response对象的text属性获取网页的HTML源代码。 第三部分是使用BeautifulSoup库解析HTML源代码,提取出需要的数据。首先需要导入BeautifulSoup库,然后将HTML源代码作为参数传入BeautifulSoup类的构造函数。之后可以使用BeautifulSoup对象的find、findAll等方法,根据HTML标签和属性来提取出需要的数据。 第四部分是保存取的数据。可以使用Python自带的文件操作函数,如open、write等,将取的数据保存到本地文件中。 最后,还可以通过循环、条件判断等控制结构,以及其他的Python编程技巧,对爬虫代码进行更加复杂的处理和优化。 总的来说,Python爬虫实例教程-代码提供了一个从安装环境到写爬虫代码的全过程。通过学习这些代码示例,可以掌握如何使用Python编写爬虫,以及一些常用的爬虫技巧和工具的使用。希望以上回答可以帮助到你。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值