使用beauthoulsoup后在pandas df中添加新行链接

2024-10-04 05:19:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从漂亮的soup html中提取一些链接,并将它们附加到新pandas数据帧的行中。

到目前为止,我有以下代码:

url = "http://www.reed.co.uk/jobs
datecreatedoffset=Today&isnewjobssearch=True&pagesize=100"
r = ur.urlopen(url).read()
soup = BShtml(r, "html.parser")
adcount = soup.find_all("div", class_="pages")
print(adcount)

然后,从我的输出中,获取由href=“”标识的每个链接,并将每个链接存储在pandas数据帧的新行中。

使用上面的代码片段,我的新数据集中会有6行。

任何帮助都将不胜感激!


Tags: 数据代码httpurlpandas链接htmlwww
1条回答
网友
1楼 · 发布于 2024-10-04 05:19:59

你的链接给出了一个404,但逻辑应该与下面相同。您只需使用page类提取锚定标记,并将它们连接到基url:

import  pandas as pd
from urlparse import urljoin
import requests 

base = "http://www.reed.co.uk/jobs"

url = "http://www.reed.co.uk/jobs?keywords=&location=&jobtitleonly=false"
r = requests.get(url).content
soup = BeautifulSoup(r, "html.parser")

df = pd.DataFrame(columns=["links"], data=[urljoin(base, a["href"]) for a in  soup.select("div.pages a.page")])

print(df)

这给了你:

^{pr2}$

相关问题 更多 >