skqqks 发表于 2020-4-17 11:11:56

爬虫的一些问题,求大佬们解惑

大佬们球解惑
爬取了美团,能够正常打印html,但是在解析html的时候出现了问题
什么结果也没有,就运行完了
代码如下:
————————————————————————————————————
import urllib.request,urllib.error
from bs4 import BeautifulSoup
import pandas as pd
import re
import pprint
baseurl = "https://bj.meituan.com/meishi/pn"

def askURL(url):
    head = {
      "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.92 Safari/537.36"
    }#模拟

    request = urllib.request.Request(url,headers=head)
    html = ""
    try:
      response = urllib.request.urlopen(request)
      html = response.read().decode("utf-8")
      #print(html)   #测试能否找到网页
    except urllib.error.URLError as e:
      if hasattr(e,"code"):
            print(e.code)
      if hasattr(e,"reason"):
            print(e.reason)

    return html

def getData(baseurl):
    datalist = []
    for i in range(1,68):
      url = baseurl + str(i) + "/"
      html = askURL(url)    #保存获取到的网页源码
      #逐一解析
      soup = BeautifulSoup(html,"html.parser")
      for each in soup.find_all("div",class_="info") :   #查找"li",class="clear btm"和"div",class_="info"都没有输出
            print(each)
getData(baseurl)
——————————————————————————————

酒醉三分醒 发表于 2020-4-17 11:37:52

你先在打印的html文档里看看有没有"li",class="clear btm"和"div",class_="info",
如果都没有,你要找的数据应该是存在动态包里,不能直接通过bs4解析html获取

skqqks 发表于 2020-4-17 16:03:43

酒醉三分醒 发表于 2020-4-17 11:37
你先在打印的html文档里看看有没有"li",class="clear btm"和"div",class_="info",
如果都没有,你要找的 ...

好的谢谢
页: [1]
查看完整版本: 爬虫的一些问题,求大佬们解惑