注册
登录
查看:469 | 回复:13
你的代码出bug
运行结果它给我返回的是访问成功200,而不是我的数据,这是为啥?
发表于 2021/9/20 19:17:01
楼主
import requests
from bs4 import BeautifulSoup
#网页请求
def page_request(url,key):
    headers = {
         User-Agent :  Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36 Edg/93.0.961.38 
    }
    params={
         c :  search ,
         keyword : key,
         minsalary :   ,
         maxsalary :   
    }
    req=requests.get(url,headers=headers,params=params)
    req.encoding=req.apparent_encoding
    return req
#网页数据抓取打印
def page_parse(text):
    soup=BeautifulSoup(text, lxml )
    job_list=soup.find_all( div ,class_= search_job_list )
    for job in job_list:
        job_demand_list=job_welfare_list=[job]
        #工作名称
        job_name=soup.find_all( div ,class_= Search_jobs_sub_Box )
        #工作薪资
        job_pay=soup.find_all( div ,class_= Search_jobs_sub_a Search_jobs_sub_cur )
        #招聘公司
        job_company=soup.find_all( div ,class_= co_recom )
        #工作要去
        job_demands=soup.find_all( div ,class_= search_city_list )
        for i in job_demands:
            job_demand_list.append(i.text)
        #工作福利
        job_welfares=soup.find_all( div ,class_= Search_jobs_sub )
        for i in job_welfares:
            job_welfare_list.append(i.text)
        #打印所有内容
        print(job_name,job_pay,job_company,job_demand_list,job_welfare_list)
if __name__ ==  __main__ :
    url= http://www.zp.cc/job/? 
    #输入关键字进行搜索
    key=input( 请输入岗位: )
    req=page_request(url,key)
    if req.status_code!=200:
        print( 访问出错 +str(req.status_code))
    else:
        print( 访问成功 ,str(req.status_code))


Cain.
发表于 2021/9/20 19:19:57
沙发

你没有调用那个 page_parse(req.text)

你的代码出bug
发表于 2021/9/20 19:22:34
板凳

刚刚调用了,还是没出数据

Cain.
发表于 2021/9/20 19:25:59
4楼
import requests
from bs4 import BeautifulSoup
#网页请求
def page_request(url,key):
    headers = {
         User-Agent :  Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36 Edg/93.0.961.38 
    }
    params={
         c :  search ,
         keyword : key,
         minsalary :   ,
         maxsalary :   
    }
    req=requests.get(url,headers=headers,params=params)
    req.encoding=req.apparent_encoding
    return req
#网页数据抓取打印
def page_parse(text):
    print(111111111)
    soup=BeautifulSoup(text, lxml )
    job_list=soup.find_all( div ,class_= search_job_list )
    for job in job_list:
        job_demand_list=job_welfare_list=[job]
        #工作名称
        job_name=soup.find_all( div ,class_= Search_jobs_sub_Box )
        #工作薪资
        job_pay=soup.find_all( div ,class_= Search_jobs_sub_a Search_jobs_sub_cur )
        #招聘公司
        job_company=soup.find_all( div ,class_= co_recom )
        #工作要去
        job_demands=soup.find_all( div ,class_= search_city_list )
        for i in job_demands:
            job_demand_list.append(i.text)
        #工作福利
        job_welfares=soup.find_all( div ,class_= Search_jobs_sub )
        for i in job_welfares:
            job_welfare_list.append(i.text)
        #打印所有内容
        print(job_name,job_pay,job_company,job_demand_list,job_welfare_list)
if __name__ ==  __main__ :
    url= http://www.zp.cc/job/? 
    #输入关键字进行搜索
    key=input( 请输入岗位: )
    req=page_request(url,key)
    if req.status_code!=200:
        print( 访问出错 +str(req.status_code))
    else:
        print( 访问成功 ,str(req.status_code))
        page_parse(req.text)


看看结果

你的代码出bug
发表于 2021/9/20 19:28:31
5楼

QQ图片20210920212813.png


是这样的数据

Z
发表于 2021/9/20 19:31:37
6楼

QQ图片20210920212933.jpg

全看后才发现你没有调用page_parse函数啊,那就不会出结果

Cain.
发表于 2021/9/20 19:35:26
7楼

那不就对了,这就是结果啊

这个是你正则的问题

发表于 2021/9/20 19:36:14
8楼

你这个数据解析成这个样子

你的代码出bug
发表于 2021/9/20 19:39:43
9楼

QQ图片20210920213112.png


可我是提取这些数据啊

Cain.
发表于 2021/9/20 19:41:59
10楼

这个是你数据解析的问题了,改一下那些就行

Z
发表于 2021/9/20 19:43:54
11楼

这提取了一堆tag对象

立即注册站大爷用户,免费试用全部产品
立即注册站大爷用户,免费试用全部产品