抓取链接/ Href CSS

Posted

技术标签:

【中文标题】抓取链接/ Href CSS【英文标题】:Scrape Links/Href CSS 【发布时间】:2021-03-01 10:55:30 【问题描述】:

以下代码会在 LinkedIn 上抓取用户的姓名、公司和位置。

我想要每个用户的链接/Href

代码需要LinkedIn的登录凭据,如果怀疑,您可以使用假帐户。

或者你可以看看代码/屏幕截图,有什么帮助。

import time

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from webdriver_manager.chrome import ChromeDriverManager
productlinks=[]
test1=[]

options = Options()

driver = webdriver.Chrome(ChromeDriverManager().install())


url = "https://www.linkedin.com/uas/login?session_redirect=https%3A%2F%2Fwww%2Elinkedin%2Ecom%2Fsearch%2Fresults%2Fpeople%2F%3FcurrentCompany%3D%255B%25221252860%2522%255D%26geoUrn%3D%255B%2522103644278%2522%255D%26keywords%3Dsales%26origin%3DFACETED_SEARCH%26page%3D2&fromSignIn=true&trk=cold_join_sign_in"
driver.get(url)
time.sleep(2)

username = driver.find_element_by_id('username')
username.send_keys('jazizi@lifesciencedynamics.com')
password = driver.find_element_by_id('password')

password.send_keys('Theboss3!')
password.submit()

element1 = driver.find_elements_by_class_name("name actor-name")
title=[t.text for t in element1]
print(title)

【问题讨论】:

【参考方案1】:

我认为使用 BeautifulSoup 会更好,但是如果您发布更多有关页面源的代码,它会更容易帮助您

用bs4你可以得到一个元素的所有html结构,然后也许用正则表达式得到href属性

【讨论】:

【参考方案2】:

    首先,在网络抓取中你能做的最糟糕的事情就是逐个类地获取元素。因为在 Web 开发中,我们通常使用 class 来进行几乎所有样式的装饰。改用 xpath 或 id。

    我在您的代码中注意到的第二件事是:您按类查找元素,其中的参数是多类名称name actor-name。我没有阅读代码也没有尝试运行它,所以我现在不明白它是如何工作的。但是你应该意识到这一点,因为在web开发中,class="name actor-name"class="actor-name name"几乎是一样的(我确实说差不多,这是我第二次提到它),但是在网络抓取将完全不同。

【讨论】:

以上是关于抓取链接/ Href CSS的主要内容,如果未能解决你的问题,请参考以下文章

python3抓取超链接

Python3分析sitemap.xml抓取导出全站链接

python web抓取代码不会打开链接

python 自学第二课: 使用BeautifulSoup抓取链接 正则表达式

抓取 html 链接 Python

使用 css 选择器使用 scrapy 抓取 Reactjs 页面上的嵌套标签