关于爬虫的问题

来源:1-1 本周介绍

__________千

2021-12-02 03:08:06

https://img.mukewang.com/climg/61a7c79809a96ffe19201080.jpg

https://img.mukewang.com/climg/61a7c7c1099f6e3119201080.jpg

# coding:utf-8

import requests
from bs4 import BeautifulSoup


def work_bs4(content):
    soup = BeautifulSoup(content,'lxml')
    print(soup.find_all('div',class_='e'))
def main():
    header = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.55 Safari/537.36 Edg/96.0.1054.34'
 }
    for i in range(1,2):
        url = 'https://search.51job.com/list/000000,000000,0000,00,9,99,%25E5%25A4%25A7%25E6%2595%25B0%25E6%258D%25AE,2,{}.html?lang=c&postchannel=0000&workyear=99&cotype=99&degreefrom=99&jobterm=99&companysize=99&ord_field=0&dibiaoid=0&line=&welfare='.format(i)
        response = requests.get(url = url,headers = header)
        work_bs4(response.text)


if __name__ == '__main__':
    main()

老师为什么我用soup.find_all('div',class_='e')打印出来的跟网页的不一样

写回答

1回答

好帮手慕凡

2021-12-02

同学,你好!

网页中显示的页面是经过浏览器解释后的,使用requests请求是请求到的源码是由服务器直接返回的,所以一些网站使用request请求到的网页源码与浏览器中的网页是不一样的,如下图:我们需要获取的数据使用requests请求下来后输出在window.__SEARCH_RESULT__ 中

https://img.mukewang.com/climg/61a8435c09f5e4bc10570235.jpg

同学可以使用selenium自动化爬虫对该网站进行爬取,祝学习愉快~

1

0 学习 · 4469 问题

查看课程