我正试图从http://portal.uspto.gov/EmployeeSearch/网站上获取数据。 我在浏览器中打开该网站,点击该网站的“按组织搜索”部分中的“搜索”按钮,然后查找发送到服务器的请求。在
当我在程序中使用python请求库发布相同的请求时,我没有得到我期望的结果页面,但是我得到了相同的搜索页面,上面没有员工数据。 我试过所有的变体,似乎都没用。在
我的问题是,我应该在我的请求中使用什么URL,我需要指定头(也尝试过,根据请求在Firefox开发人员工具中查看的复制头)还是其他什么?在
下面是发送请求的代码:
import requests
from bs4 import BeautifulSoup
def scrape_employees():
URL = 'http://portal.uspto.gov/EmployeeSearch/searchEm.do;jsessionid=98BC24BA630AA0AEB87F8109E2F95638.prod_portaljboss4_jvm1?action=displayResultPageByOrgShortNm¤tPage=1'
response = requests.post(URL)
site_data = response.content
soup = BeautifulSoup(site_data, "html.parser")
print(soup.prettify())
if __name__ == '__main__':
scrape_employees()
您需要的所有数据都在
form
标记中:action
是发布到服务器时的url。在input
是需要发送到服务器的数据。{name:value}
相关问题 更多 >
编程相关推荐