使用urllib2和BeautifulSoup不接收我在brows中查看的数据

2024-04-25 04:36:47 发布

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

我正在尝试搜索一个网站:

http://www.gabar.org/membersearchresults.cfm?start=26&id=E640EC74-9C8E-9913-79DB5D9C376528C0

我知道上面的链接会显示,没有搜索结果,但当我做手动搜索有结果。你知道吗

我遇到的问题是,当我在浏览器中打开此链接时,我能够按预期看到一个页面,但是当我在“靓汤”中打开它时,输出的内容与此搜索不可用的内容大致相同。你知道吗

我是新来的,所以不太清楚这是如何工作的,网站有没有内置的东西,使这样的事情(urllib2/beautifulsoup)不工作?你知道吗

File = urllib2.urlopen("http://www.gabar.org/membersearchresults.cfm?start=26&id=E640EC74-9C8E-9913-79DB5D9C376528C0")

Html = File.read()
File.close()

soup = BeautifulSoup(Html)
AllLinks = soup.find_all("a")

lawyerlinks = []

for link in soup.find_all("a"):
    lawyerlinks.append(link.get('href'))

lawyerlinks = lawyerlinks[76:100]

print lawyerlinks

Tags: orgidhttp内容网站链接wwwstart
1条回答
网友
1楼 · 发布于 2024-04-25 04:36:47

那太迷人了。转到first page of results工作区,然后单击“下一步”工作,它所做的只是将您带到发布的URL。但是如果我直接访问这个网址,我就没有结果了。你知道吗

请注意,urllib2.urlopen的行为确实与这里的浏览器完全一样。如果你直接打开一个浏览器到那个页面,你不会得到任何结果-这正是你用urlopen得到的结果。你知道吗

你要做的是模拟一个浏览器,访问结果的第一页,然后像浏览器一样模拟单击“下一步”。我所知道的最好的库是mechanize。你知道吗

import mechanize
br = mechanize.Browser()
br.open("http://www.gabar.org/membersearchresults.cfm?id=ED162783-9C8E-9913-79DBE86CBE9FB115")
response1 = br.follow_link(text_regex=r"Next", nr=0)
Html = response1.read()

#rest is the same

相关问题 更多 >