鱼C论坛

 找回密码
 立即注册
查看: 2114|回复: 5

soup 中选择器的问题

[复制链接]
发表于 2020-3-7 18:51:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 一个账号 于 2020-3-7 19:06 编辑
  1. import urllib.request
  2. import urllib.parse
  3. from bs4 import BeautifulSoup

  4. class ZLspider(object):
  5.     url = 'https://sou.zhaopin.com/?'
  6.     def __init__(self, jl, kw, start_page, end_page):
  7.         self.jl = jl
  8.         self.kw = kw
  9.         self.start_page = start_page
  10.         self.end_page = end_page
  11.     # 拼接url 生成请求对象
  12.     def handle_request(self, page):
  13.         data = {
  14.             'p': page,
  15.             'jl': self.jl,
  16.             'kw': self.kw
  17.         }
  18.         headers = {
  19.             'user - agent': 'Mozilla / 5.0(Windows NT 10.0;WOW64) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 69.0.3947.100Safari / 537.36'
  20.         }
  21.         url_now = self.url + urllib.parse.urlencode(data) #self.url
  22.         request = urllib.request.Request(url=url_now, headers=headers)
  23.         return request
  24.     # 解析内容函数
  25.     def parse_content(self, content):
  26.         #生成对象
  27.         soup = BeautifulSoup(content, 'lxml')
  28.         # 获取每一个职位信息
  29.         zhiwei_list = soup.select(".contentpile__content__wrapper clearfix")
  30.         print(zhiwei_list)
  31.         print(len(zhiwei_list))
  32.     # 爬取程序
  33.     def run(self):
  34.         # 循环爬取每一页数据
  35.         for page in range(self.start_page, self.end_page + 1):
  36.             request = self.handle_request(page)
  37.             # 发送请求,获取内容
  38.             content = urllib.request.urlopen(request).read().decode()
  39.             # 解析内容
  40.             self.parse_content(content)


  41. def main():
  42.     # url所需要的相关参数
  43.     jl = input('请输入工作地点:')
  44.     kw = input('请输入工作职位:')
  45.     start_page = int(input('请输入起始页码:'))
  46.     end_page = int(input('请输入结束页码:'))

  47.     # 创建对象启动爬虫程序
  48.     spider = ZLspider(jl, kw, start_page, end_page)
  49.     spider.run()


  50. if __name__ == '__main__':
  51.     main()
复制代码


问题在def parse_content()中 我使用soup.selct('.contentpile__content__wrapper clearfix') 返回的列表是空值 麻烦大佬给看看
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-3-7 19:02:36 | 显示全部楼层
  1. 请用代码格式发代码!
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-7 19:06:30 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-7 19:07:03 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-7 19:16:34 | 显示全部楼层

不好意思,第一次发,有点不太熟练
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-7 19:53:16 | 显示全部楼层
1564641461 发表于 2020-3-7 19:16
不好意思,第一次发,有点不太熟练

我已经帮你改了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-5 00:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表