【发布时间】:2014-07-18 03:19:49
【问题描述】:
我想将页面从 PeoplePerHour.com 加载到 python 中以运行一些数据分析,但它不断从我没有要求的页面获取数据,我认为它必须转到主页然后以某种方式刷新到我要求的页面。
例如: 我想从http://www.peopleperhour.com/freelance/data+analyst的所有用户那里提取价格,数据跨越多个页面。
假设我想请求第 2 页,http://www.peopleperhour.com/freelance/data+analyst#page=2。如果我在浏览器中进入这里,它可以正常工作并拉出第 2 页,但我认为它会先拉出第 1 页,然后“刷新”到第 2 页(我认为)。如果我在 python 中访问它,它会从第一页加载 HTML,并且永远不会看到第 2 页。
这是我的代码:
import requests
from pattern import web
import re
import pandas as pd
def list_of_prices(url):
html = requests.get(url).text
dom = web.DOM(html)
list = []
for person in dom('.freelancer-list-item .medium.price-tag'):
currency = person('sup')
amount = person('span')
list.append([currency[0].content if currency else 'na', amount[0].content if amount else 'na'])
return list
list_of_prices('http://www.peopleperhour.com/freelance/data+analyst#page=2')
无论如何,这将返回第 1 页的价格。
发生了什么我只是没看到?
【问题讨论】: