新来的程序员。在我学习python的时候,我试着浏览pof站点。试着用请求和漂亮的汤在网上拉屎。提前谢谢
错误似乎来自于行res=请求.get('https://www.pof.com/everyoneonline.aspx?page_id=%s'%pageId)
我试图删除分页页,只刮一页,但没用 也试着用时间。睡觉每次请求间隔3秒,但也没用
#Username and password
username='MyUsername'
password='MyPassword'
#Login to pof site
from selenium import webdriver
import bs4,requests
browser = webdriver.Chrome(executable_path='/Users/Desktop/geckodriver-v0.24.0-win32/chromedriver.exe')
browser.get('https://www.pof.com')
linkElem= browser.find_element_by_link_text('Sign In')
linkElem.click()
usernameElem=browser.find_element_by_id('logincontrol_username')
usernameElem.send_keys(username)
passwordElem=browser.find_element_by_id('logincontrol_password')
passwordElem.send_keys(password)
passwordElem.submit()
#Webscraping online profile links from first 7 pagination pages
for pageId in range(7):
res=requests.get('https://www.pof.com/everyoneonline.aspx?page_id=%s' %pageId)
res.raise_for_status()
soup= bs4.BeautifulSoup(res.text)
profile = soup.findAll('div', attrs={'class' : 'rc'})
for div in profile:
print (div.findAll('a')['href'])
预期结果: 打印配置文件的所有href链接的列表,以便以后可以将它们保存到csv
实际结果:
requests.exceptions.ConnectionError:('Connection aborted.',ConnectionResetError(10054,'An existing Connection was forced closed by the remote host',None,10054,None))enter code here
我会给你一些一般的信息,当刮网页:
re
模块。BeautifulSoup
很好,但是对于一般用途来说,re
只是在我的经验中更容易。在现在来回答你的问题吧,这里有很多不同的网页,但我建议你从所有网页中删除:
提取数据~
标题数据
Network
部分。在这里,您可以看到浏览器发出的所有请求,以及标题和源。在GET
或在您的例子中是POST
方法的请求。在:
开头的头,比如:method: POST
)过帐数据
Headers
部分应该有另一个部分,名为“Payload”或“formdata”行。将其内容放入另一个python dict中,并根据需要更改其内容。在使用数据~
现在您已经准备好将提取的数据用于python请求,然后在响应内容上使用}来提取所需的数据。
^{pr2}$re
或{在本例中,我登录到https://aavtrain.com/index.asp
试着按照我写的步骤来理解这里发生的事情:
我希望这对你有帮助,如果你有任何疑问,我会给你回电的。在
相关问题 更多 >
编程相关推荐