小编use*_*364的帖子

从页面获取所有链接美丽的汤

我正在使用beautifulsoup从页面获取所有链接.我的代码是:

import requests
from bs4 import BeautifulSoup


url = 'http://www.acontecaeventos.com.br/marketing-promocional-sao-paulo'
r = requests.get(url)
html_content = r.text
soup = BeautifulSoup(html_content, 'lxml')

soup.find_all('href')
Run Code Online (Sandbox Code Playgroud)

我得到的只是:

[]
Run Code Online (Sandbox Code Playgroud)

如何获取该页面上所有href链接的列表?

python beautifulsoup html-parsing web-scraping

8
推荐指数
2
解决办法
1万
查看次数

在 groupby() Pandas 之后将多索引转换为单索引

可能这个问题是一些函数的捆绑。我在重命名多个索引并转换为简单索引时遇到问题。

假设我有以下 DF

Customer      Date               Amount
John          10-10-2016         100,00
Mark          12-10-2016         50,00
John          13_10_2016         200,00
Run Code Online (Sandbox Code Playgroud)

如果我应用以下代码:

aggregation = {'Amount':{
                'total' : 'sum'},
                'Date':{
                 'first_purchase' :'min',
                 'last_purchase' : 'max'}
               }
 df_final = df.groupby('Customer').agg(aggregation).reset_index()
Run Code Online (Sandbox Code Playgroud)

我得到的结果是:

  Customer     Amount           Date
               total            first_purchase    last_purchase 
  John         300,00            10-10-2016       13-10_2016
  Mark         50,00             12-10-2016       12-10-2016
Run Code Online (Sandbox Code Playgroud)

问题是,我稍后将使用这个数据框与其他数据框合并,而多重索引对我来说并不好。我想将其转换为单个索引以获得如下数据框:

      Customer     total            first_purchase    last_purchase 
      John         300,00            10-10-2016       13-10_2016
      Mark         50,00             12-10-2016       12-10-2016
Run Code Online (Sandbox Code Playgroud)

我已经尝试过一些 unstack 并将索引重置为 0 级,但它不起作用。有人能帮我吗?如果这是一个重复的问题,我很抱歉,但经过多次尝试,到目前为止我还没有找到答案。

tks

python pandas

5
推荐指数
1
解决办法
6420
查看次数

在数据框中使用 geopy 来获取距离

我是 Geopy 的新手。我在这家运输公司工作,需要获取卡车运行的总公里数。

我在这里看到了一些答案,但它们对我不起作用。

我有来自卡车上安装的 GPS 的以下数据框

    latitude    longitude
0   -25.145439  -54.294871
1   -24.144564  -54.240094
2   -24.142564  -54.198901
3   -24.140093  52.119021
Run Code Online (Sandbox Code Playgroud)

第一步是制作第三个专栏,将所有内容转变为一个点,但我所有的尝试都失败了

我写的

df['point'] = df['latitude'].astype(float),df['longitude'].astype(float)
Run Code Online (Sandbox Code Playgroud)

它返回一个对象。我希望它返回一个点。我的目标是:

    latitude    longitude      Point
0   -25.145439  -54.294871     (-25.145439  -54.294871)
1   -24.144564  -54.240094     (-24.144564  -54.240094)
2   -24.142564  -54.198901     (-24.142564  -54.198901)
3   -24.140093  52.119021      (-24.140093  52.119021)
Run Code Online (Sandbox Code Playgroud)

然后我想与这两个保持距离,这样我就会有这样的东西:

    latitude    longitude      Point                        Distance KM
0   -25.145439  -54.294871     (-25.145439  -54.294871)     0
1   -24.144564  -54.240094     (-24.144564  -54.240094)     0,2
2   -24.142564  -54.198901     (-24.142564  -54.198901)     0,4
3   -24.140093  52.119021      (-24.140093  52.119021)      0,2 …
Run Code Online (Sandbox Code Playgroud)

python geopy pandas

4
推荐指数
1
解决办法
7806
查看次数