使用Python抓取JavaScript生成的页面

汤姆·陈

我需要为https://hasjob.co/整理一些信息,我可以通过进入登录页面来抓取某些信息并像往常一样抓取,但是大多数信息仅当您向下滚动到底部时才由Javascript生成页面的。

任何使用python的解决方案?

import mechanize
import cookielib
from bs4 import BeautifulSoup
import html2text

import pprint

job = []

# Browser
br = mechanize.Browser()

# Cookie Jar
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)

# Browser options
br.set_handle_equiv(True)
br.set_handle_redirect(True)
br.set_handle_referer(True)
br.set_handle_robots(False)
br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)

br.addheaders = [('User-agent', 'Chrome')]

# The site we will navigate into, handling it's session
br.open('https://auth.hasgeek.com/login')

# View available forms
##for f in br.forms():
##    print f

# Select the second (index one) form (the first form is a search query box)
br.select_form(nr=1)

# User credentials
br.form['username'] = 'username'
br.form['password'] = 'pass'

br.submit()

##print(br.open('https://hasjob.co/').read())

r = br.open('https://hasjob.co/')


soup = BeautifulSoup(r)


for tag in soup.find_all('span',attrs={'class':'annotation bottom-right'}):

    p = tag.text
    job.append(p)


pp = pprint.PrettyPrinter(depth=6)

pp.pprint(job)
基兰·乔纳拉达(Kiran Jonnalagadda)

由于某种原因,几乎没有人注意到Hasjob具有Atom提要,并且它是从主页链接的。使用feedparser库从Hasjob读取结构化数据非常简单:

import feedparser
feed = feedparser.parse('https://hasjob.co/feed')
for job in feed.entries:
    print job.title, job.link, job.published, job.content

订阅源过去已经满了30天,但是现在已经有800多个条目,并且服务器上还有相当大的负载,因此我将其减少到工作的最后24小时。如果您需要常规的工作帮助,则每天至少要从此URL加载一次。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Python请求抓取页面

来自分类Dev

使用 Python 抓取特定页面

来自分类Dev

如何使用BeautifulSoup和Python抓取页面?

来自分类Dev

使用Python递归抓取页面(草率)

来自分类Dev

使用python为多个页面抓取网页

来自分类Dev

使用 Python 抓取 TripAdvisor 酒店页面

来自分类Dev

使用 BeautifulSoup 在 python 中抓取多个页面

来自分类Dev

javascript使用C#生成的抓取网页

来自分类Dev

如何使用生成器抓取页面内容?

来自分类Dev

抓取javascript生成的网页

来自分类Dev

使用cheerio 抓取页面

来自分类Dev

如何使用javascript抓取页面中的所有链接

来自分类Dev

如何使用 Scrapy Crawler 和 Splash 抓取 Javascript 页面

来自分类Dev

Python + scrapy + 网页抓取:页面未被抓取

来自分类Dev

使用Python抓取基于Javascript的网站

来自分类Dev

使用Python和Selenium Webdriver抓取JavaScript

来自分类Dev

使用SCRAPY和PYTHON从Javascript抓取数据

来自分类Dev

使用 python BueatifulSoup 抓取 javascript 表

来自分类Dev

适用于javascript生成内容的Python网络抓取

来自分类Dev

使用python抓取网站时获取最大页面数

来自分类Dev

使用Selenium(Python3)抓取网站的多个页面

来自分类Dev

如何使用Python和BeautifulSoup抓取多个Google页面

来自分类Dev

使用R或Python抓取网页和相关的后续页面

来自分类Dev

如何使用python硒从页面递归地抓取表格

来自分类Dev

在Python中使用笨拙的JSON格式抓取页面

来自分类Dev

如何使用python HTMLParser从HTML页面中抓取特定值

来自分类Dev

Python-使用BeautifulSoup在页面内抓取多个类

来自分类Dev

使用python抓取网站时获取最大页面数

来自分类Dev

使用python访问和网页抓取动态页面

Related 相关文章

热门标签

归档