使用正则表达式排除facebook共享url在网络爬虫操作

nikohollfeldernikohollfelder 成员职位:1贡献我
2019年12月编辑 帮助
你好,
我想爬这个网站:

https://www.bmwgroup.com/en.html
还有其他一些公司。

因此,我使用了正则表达式。+bmwgroup.+en.+
我使用“en”是因为我只想抓取英文网站,而故意不使用“/en”,因为有些网站包含没有/的en。
问题是爬虫也会抓取所有的社交媒体共享链接。因此,爬行的过程会持续很长时间,因为facebook和co的共享链接也包括正则表达式。
我怎样才能排除facebook, linkedin, twitter等?
我尝试了。+(?!facebook)宝马集团。+en。+但没有成功。
你有什么想法吗?此外,我不得不说我不能使用正则表达式:https\:\/\/www\.bmwgroup.+en。避免抓取任何不以+开头的网站https://www.bmwgroup,因为本网站的其他链接只是HTTP或以HTTP开头http://w3.bmwgroup所以这些位置可以忽略。但我想抓取所有链接,而不是社交媒体链接。
你能帮帮我吗?

答案

  • kaymankayman 成员职位:662独角兽

    你可能确实需要正确的开始部分,所以试着这样做

    https ?: \ / \ / \ .bmwgroup (www | w3)。+。+

    这将允许您抓取www和w3的http和https,然后是bmwgroup。您将避免以这种方式抓取不同的域,而抓取感兴趣的域。

    Thomas_Ott
登录注册置评。