Я делаю проект Python, в котором пользователь может искать стажировку, которую они хотят, и программа будет отображать данные о данных всех стажировок с веб -сайта Internshala, но у меня возникает проблема, которую красивый суп только читает страницу 1, и после этого он не возвращает ни одного. < /p>
import pandas as pd
from bs4 import BeautifulSoup
import requests
import time
a=input("enter the internship position:")
def get_soup(a, pageno="1"):
url = "https://internshala.com/internships/keywords-"
l = a.split()
for n, i in enumerate(l):
if n != len(l) - 1:
url += i + "%20"
else:
url += i + "/"
url += f"page-{pageno}/"
head = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36"
}
req = requests.get(url, headers=head)
soup = BeautifulSoup(req.content, "html.parser")
return soup
def get_pageno():
num=get_soup(a).find("div",class_="page_number heading_6").find_all("a")[-1].text.strip()
return num
def get_info(no):
info={"company":[],"role":[],"location":[],"stipend":[],"duration":[]}
hlo=get_soup(a,pageno=no).find(id="internship_list_container_1")
internships=hlo.find_all(class_="container-fluid individual_internship view_detail_button visibilityTrackerItem")
for i in internships:
company=i.find("p",class_="company-name").text.strip()
role=i.find("a",class_="job-title-href").text.strip()
location=i.find("div",class_="row-1-item locations").find("a").text.strip()
stipend=i.find("span",class_="stipend").text.strip()
duration=i.find_all("div",class_="row-1-item")[2].find("span").text.strip()
info["company"].append(company)
info["role"].append(role)
info["location"].append(location)
info["stipend"].append(stipend)
info["duration"].append(duration)
df=pd.DataFrame(info)
return df
print(get_soup(a))
info={"company":[],"role":[],"location":[],"stipend":[],"duration":[]}
dfm=pd.DataFrame(info)
for i in range(1,int(get_pageno())+1):
dfm=pd.concat([dfm,get_info(i)])
time.sleep(1)
print(dfm)
Подробнее здесь: https://stackoverflow.com/questions/796 ... 1-in-a-web
Красивый суп возвращает нет, когда я иду на любые другие страницы, отличные от 1 на веб -сайте ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение